二進位制按位邏輯運算子2017/11/22
阿新 • • 發佈:2019-02-03
自學內容:
1 、按位邏輯運算子有4個符號,分別是:
1 、一元運算子~ ,
2 、二院運算子& ,
3、 二元運算子l ,
4、 二元運算子^ ,
含義介紹:
1 、一元運算子~ ,
運算子 ~ 把1變為0,把0變為1。加上運算子 ~ 的二進位制數值,的結果值都會相反,
如下列所示:
~(10011010) //表示式(書寫式)
(01100101) //結果值
2 、二院運算子& ,
運算子 & 通過逐位比較兩個運算物件,生成一個新的值,兩個8位二進位制的數值對比,把數值1都在一個位置上的保留下來,其他用0代替。
如下列所示:
(10010011)&(00111101) //表示式
(00010001) 結果值
3、 二元運算子l ,
運算子 l 通過逐位比較兩個運算物件,生成一個新的值,兩個8位二進位制的數值對比,把數值0都在一個位置上的保留下來,其他用1代替。
如下例所示:
(10010011)l(00111101) //表示式
(10111111) //結果值
1 、按位邏輯運算子有4個符號,分別是:
1 、一元運算子~ ,
2 、二院運算子& ,
3、 二元運算子l ,
4、 二元運算子^ ,
含義介紹:
1 、一元運算子~ ,
運算子 ~ 把1變為0,把0變為1。加上運算子 ~ 的二進位制數值,的結果值都會相反,
如下列所示:
~(10011010) //表示式(書寫式)
(01100101) //結果值
2 、二院運算子& ,
運算子 & 通過逐位比較兩個運算物件,生成一個新的值,兩個8位二進位制的數值對比,把數值1都在一個位置上的保留下來,其他用0代替。
如下列所示:
(10010011)&(00111101) //表示式
(00010001) 結果值
3、 二元運算子l ,
運算子 l 通過逐位比較兩個運算物件,生成一個新的值,兩個8位二進位制的數值對比,把數值0都在一個位置上的保留下來,其他用1代替。
如下例所示:
(10010011)l(00111101) //表示式
(10111111) //結果值
4、 二元運算子^ ,
運算子^通過逐位比較兩個運算物件,生成一個新的值,兩個8位二進位制的數值對比,在同為位,且同數的,都用0代替,其餘用1代替。
如下例所示:
例如,假設 flags 是00001111,MASK是10110110.
表示式: flags ^MASK
即是:(00001111)^(10110110) //表示式
其結果為:(10111001) //結果值