原码
反码
补码(机器码)
+1
0000 0001
0000 0001
0000 0001
-1
1000 0001
1111 1110
1111 1111
+0
0000 0000
0000 0000
0000 0000
-0
1000 0000
1111 1111
备注
第一位是符号位,正数为0,负数为1。
正数不变;负数符号位不变,其余取反。
正数不变;负数在反码的基础上再+1。
取值范围
[-127,127]
[-127,127]
[-128,127]
操作符 描述 运算规则
& 与 相对应位都为1时,结果为1
| 或 相对应位都为0时,结果为0
^ 异或 相对应位相同为0,相异为1(相异为真,非异为假)
~ 取反 0变1,1变0
<< 左移 各二进制位全部左移,高位丢弃,低位补0
>> 右移 符号位不动,其他二进制位全部右移,负数高位补1,正数高位补0!
>>> 符号位右移 各二进制位全部右移,高位补0!