首先,计算机都是使用二进制的补码进行计算。
1、正数的二进制原码、反码、补码都是相同的
2、负数的二进制原码:负数的绝对值的二进制的最高位变为1(1是标志位,只用来表示正负,1表示负数,0表示是正数。所以八位二进制的取值范围是[-127,127]),其余位与正数原码相同。
比如-32
第一步:32(10)=00100000(2)
第二步:最高位变为1:10100000
3、负数的反码:等于原码的最高位不变,其余取反。
比如-32
原码为:10100000
反码为:11011111
4、负数的补码:等于原码的最高位不变,其余取反,然后加一。
比如-32
第一步,原码为:10100000
第二步,最高位不变取反:11011111
第三步,加一得补码:11100000