位运算
-
& 位与:第一个操作数的的第n位于第二个操作数的第n位如果都是1,那么结果的第n为也为1,否则为0
a = 1001 1100
b = 1000 0001
a & b = 1000 0000
-
| 位或操作:第一个操作数的的第n位于第二个操作数的第n位 只要有一个是1,那么结果的第n为也为1,否则为0
a = 1001 1100
b = 1000 0001
a | b = 1001 1101
-
^ 位异或:第一个操作数的的第n位于第二个操作数的第n位 相反,那么结果的第n为也为1,否则为0
a = 1001 1100
b = 1000 0001
a | b = 0001 1101
-
左移( << ) *2 (每左移一位)
-
右移( >> ) /2 (每右移一位)
位运算是计算最有效率的因为它直接作用于二进制