按位与 (&):
a = 2, b = 3
a & b = 2
解释: 2的二进制为'10',3的二进制为'11',按位与:都为1时得1,出现0时得0,因此结果是'10',即2
按位或(|):
a = 6, b = 5
a | b = 7
解释:6='110',5='101',按位或,每一位二进制上进行或操作,得到'111',即7
按位异或(^):
a = 2, b = 4
a ^ b = 6
解释:2='10', 4='100', 结果为'110',即6
异或:相同为0,不同为1
按位取反(~):
~2 = -3
~(-2) = 1
~0 = -1
按位取反:先+1再取相反数。
左移(<<):
2 << 1 = 4
解释:2='10', 左移1位变为'100',即4
右移(>>):
2 >> 1 = 1
解释: 2='10', 右移一位变为'1',即1
---------------------
作者:桐哥优秀
来源:CSDN
原文:https://blog.csdn.net/romeo12334/article/details/81234991
版权声明:本文为博主原创文章,转载请附上博文链接!