位运算符有很多种。
下面讨论一下一些位运算符的含义:
1)移位运算符:包括左移<<与右移>>,可以通过将位向左或向右移动来变换整数的二进制表示。操作对象可以是任意整数类型。m<<n表示将m中的位左移n位,每次从m的最左边溢出一位,在m的最右边补一个0。右移类似,如果m没有符号或者非负,则需要在m左端补0。
(第二行为右移3,第三行为左移3)
2)按位求反(~):就是对操作数求反结果,即将每个0替换成1。
3)按位与(&):a&b,在相应位上,若都为1,则结果为1,否则为0;
4) 按位异或(^):a^b,在相应位上,相同为0,否则为1.
5)按位或(|):a|b,在相应位上,有1则为1,全0则为0;
以下每一行:12,10,12&10,12|10,12^10,~10