位運算操作符介紹
& 運算子
a&b是將兩個表示式的值按二進位制位展開,對應的位(bit)按值進行「與」運算,結果保留在該位上。如果兩數字數不同,則較短數高位補零,再運算。
9&8 轉換成二進位制
1001
&1000
結果是1000
| 運算子
a|b是將兩個表示式的值按二進位制位展開,對應的位(bit)按值進行「或」運算,結果保留在該位上。如果兩數字數不同,則較短數高位補零,再運算。
9|8 轉換成二進位制
1001
|1000
結果是1001
^ 運算子
a^b是將兩個表示式的值按二進位制位展開,對應的位(bit)按值進行「異或」運算,結果保留在該位上。如果兩數字數不同,則較短數高位補零,再運算。
9^8 轉換成二進位制
1001
|1000
結果是0001
~ 運算子
單目運算子,對每一位取反
~9的運算為:
~0000000000001001
1111111111110110
所以~9=65526
>> 運算子
右移運算子》用來把運算元的各二進位全部右移若干位,低位丟棄,高位補0(或1)。例如:
a=9; //對00001001進行右移
a>>3; //右移3位
結果是00000001
《運算子
左移運算子《用來把運算元的各二進位全部左移若干位,高位丟棄,低位補0。例如:
a=9; //對00001001進行左移
a<<3;//左移3位
結果是01001000(十進位制72)
位運算總結
位運算是指按二進位制進行的運算。在系統軟體中,常常需要處理二進位制位的問題。c語言提供了6個位操作 運算子。這些運算子只能用於整型運算元,即只能用於帶符號或無符號的char,short,int與long型別。c語言提供的位運算子列表 運算子 含義 描述 按位與 如果兩個相應的二進位制位都為1,則該位...
位運算總結
位運算是指按二進位制進行的運算。在系統軟體中,常常需要處理二進位制位的問題。c語言提供了6個位操作 運算子。這些運算子只能用於整型運算元,即只能用於帶符號或無符號的char,short,int與long型別。c語言提供的位運算子列表 運算子 含義 描述 按位與 如果兩個相應的二進位制位都為1,則該位...
位運算總結
一 優先順序 高 低 算術運算子 關係運算子 賦值 二 移位運算 要點 1 它們都是雙目運算子,兩個運算分量都是整形,結果也是整形。2 左移 右邊空出的位上補0,左邊的位將從字頭擠掉,其值相當於乘2。3 右移 右邊的位被擠掉。對於左邊移出的空位,如果是正數則空位補0,若為負數,可能補0或補1,這取決...