1、AND & 与运算
当同位都为 1 时,才为 1,否则都是 0。
1 & 1 = 1;
1 & 0 = 0;
0 & 0 = 0。
2、XOR ^ 异或运算
只有同位都不一样,才为 1,否则都是 0。
1 ^ 0 = 1;
1 ^ 1 = 0;
0 ^ 0 = 0。
3、OR | 或运算
只要同位有 1 即为 1,否则都是 0。
1 | 1 = 1;
1 | 0 = 1;
0 | 0 = 0。
4、~ 按位取反
-
同位取反,1 变 0,0 变 1。
- 1100 1001 = 0011 0110。
5、<< 左移
2 << 1 = 4:10 << 1 = 100;
2 << 2 = 8:10 << 2 = 1000。
用来将一个数的各二进制位全部左移 N N N 位,右补 0。
6、>> 右移
2 >> 1 = 1:10 >> 1 = 1;
15 >> 2 = 3:1111 >> 2 = 11。
将一个数的各二进制位右移 N N N 位,移到右端的低位被舍弃,
对于无符号数,高位补 0。