原码反码补码的关系
二进制位运算
-
与运算(and &)
两个都为1,则为1
1 0 0 1 1 0 1 0
1 1 0 0 0 1 1 0
------------------
1 0 0 0 0 0 1 0
-
或运算(or | )
一个为1,则为1
1 0 0 1 1 0 1 0
1 1 0 0 0 1 1 0
------------------
1 1 0 1 1 1 1 0
-
异或运算(xor ^)
不一样就是1
1 0 0 1 1 0 1 0
1 1 0 0 0 1 1 0
------------------
0 1 0 1 1 1 0 0
-
非运算(单目运算)
取反
1 0 0 1 1 0 1 0
------------------
0 1 1 0 0 1 0 1
- 位运算(移动位,左移×2,右移÷2)
0000 0001 1
0000 0010 2
0000 0100 4
0000 1000 8