首先,計算機都是使用二進制的補碼進行計算。
1、正數的二進制原碼、反碼、補碼都是相同的
2、負數的二進制原碼:負數的絕對值的二進制的最高位變為1(1是標志位,只用來表示正負,1表示負數,0表示是正數。所以八位二進制的取值范圍是[-127,127]),其余位與正數原碼相同。
比如-32
第一步:32(10)=00100000(2)
第二步:最高位變為1:10100000
3、負數的反碼:等於原碼的最高位不變,其余取反。
比如-32
原碼為:10100000
反碼為:11011111
4、負數的補碼:等於原碼的最高位不變,其余取反,然后加一。
比如-32
第一步,原碼為:10100000
第二步,最高位不變取反:11011111
第三步,加一得補碼:11100000