整型数据在内存中以二进制补码形式进行存储,n位二进制补码的计算公式为:[x]补=2n+x数组
如:[-1]补=28+(-1)=255=1 111 1111Bspa
二进制减法口算方法:由n个二进制1组成,即:,所以,比该数略小的数只须将若干相应位权的1改成0便可。如,内存
250=(2^8-1)-5=1111 1111B-101B=1111 1010Bclass
二进制加法口算方法:由1个1和n个0构成的二进制数组成,即:,所以,比该数略大的数只须将若干相应位权的0改成1便可。如,扩展
16若干倍的数可先转换成十六进制数再转换成二进制数,如二进制
176=11*16+0=0B0H=0xB0=10110000B方法
161=10*16+1=0A1H=0xA1=10100001Bim
正数求补码的方法:符号位为0,数值转换为n-1位二进制数得原码;正数反码和补码同原码。数据
负数求补码的方法:符号位为1,数值转换为n-1位二进制数得原码;将原码数值位取反获得反码,再将反码数值未位加1得补码。因而可知,对于负数,同一个数的原码、反码、补码是不一样的。如求-1补码的步骤以下:img

补码符号位扩展或压缩数值不变(高位增减符号值不变),如
[-1]补=1 111 1111B=1111 1111 1111 1111B
[+1]补=0 000 0001B=0000 0000 0000 0001B