同一个数,其负数和正数相加的结果要为 0,比如数字 7,-7 + 7 = 0,所以 -7 = 0 - 7,用二进制表示就是 -7 = 0000 - 0111 = 1001 。 另一方面,7 的二进制表示 0111,0111 的反码是 1000,补码(反码+1)是 1001,所以 -7 的二进制表示是 1001,和上面的结果完全一致。 从 CPU 的角度看,在 8 bit 数据中,对于一个二进制数 11111001,它可以表示十进制正整数 249,也可以表示十进制负整数 -7, CPU 在运算的时候不管它是正数还是负数,运算结果总是对的。