运算符的计算(按位与 按位或 异或 取反)

按位与运算符 [ & ]

运算规则:依次比较两个二进制数的每一位,,按照有0则0,否则为1的规则,依次计算出一个新的二进制数
即:0 & 0= 0 ,0 & 1= 0,1 & 0= 0, 1 & 1= 1
例: 39 & 21 --> 0010 0111 & 0001 0101 --> 0000 0101

按位或运算符 [ | ]

运算规则:依次比较两个二进制数的每一位,,按照有1则1,否则为0的规则,依次计算出一个新的二进制数
即:0 | 0= 0 ,0 | 1= 1,1 | 0= 1, 1 | 1= 1
例: 39 | 21 --> 0010 0111 | 0001 0101 --> 0011 0111

异或运算符 [ ^ ]

运算规则:依次比较两个二进制数的每一位,,按照相同为0,不同为1的规则,依次计算出一个新的二进制数
即:0 ^ 0= 0 ,0 ^ 1= 1,1 ^ 0= 1, 1 ^ 1= 1
例: 39 ^ 21 --> 0010 0111 ^ 0001 0101 --> 0011 0010

取反运算符 [ ~ ]

运算规则:对于二进制数的每一位,1变0,0变1,得到一个新的二进制数
即:~0 = 1 , ~1= 0
因为涉及到 补码 原码 符号,感觉挺复杂的,涉及的知识比较多
总结为一句:

对所有整数取反=本身的相反数减一
~9 = -10
~10 = -11

猜你喜欢

转载自blog.csdn.net/weixin_45309916/article/details/107543919