补码与负数
补码是用来实现负数的。
正数的补码就是其本身
负数的补码是在其原码的基础上, 符号位不变, 其余各位取反, 最后+1. (即在反码的基础上+1)
现在我们知道了计算机可以有三种编码方式表示一个数. 对于正数因为三种编码方式的结果都相同:
[+1] = [00000001]原 = [00000001]反 = [00000001]补
所以不需要过多解释. 但是对于负数:
[-1] = [10000001]原 = [11111110]反 = [11111111]补
直接按位取反
对应表:
-128 -127 -126 … -1
+127 +126 +125 … 0
-128 =NOT=> 127 + 1 = 128
127 =NOT=> -128 + 1 = 127
这游戏挺好玩
到了随机存储就过不了QAQ