运算基本规则:
- 二进制的最高位是符号位:0表示正数,1表示负数
- 正数的原码,反码,补码都一样(三码合一)
- 负数的反码=它的原码符号位不变,其它位取反
- 负数的补码=它的反码+1,负数的反码=负数的补码-1
- 0的反码,补码都是0
- 在计算机运算的时候,都是以补码的方式来运算的
- 当我们看运算结果的时候,要看他的原码
举例
- 2 &3
2的原码:0000 0010 3的原码:0000 0011
2的反码:0000 0010 3的反码:0000 0011
2的补码:0000 0010 3的补码:0000 0011
运算后的补码:0000 0010
运算后的反码:0000 0010
运算后的原码:0000 0010
故结果为:2
- ~-2
-2的原码:1000 0010
-2的反码:1111 1101
-2的补码:1111 1110
运算后的补码:0000 0001
运算后的反码:0000 0001
运算后的原码:0000 0001
故结果为:1
- ~2
2的原码:0000 0010
2的反码:0000 0010
2的补码:0000 0010
运算后的补码:1111 1101
运算后的反码:1111 1100
运算后的原码:10000 0011
故结果为:-3