计算机中对数据进行二进制存储,原码、反码和补码是计算机对数字的一种二进制表示方法
【原码】第一位表示符号位(0表示正,1表示负),其余表示数值位;
【反码】正数的反码等于原码;负数的反码就是它的原码除符号位外,按位取反
-
在反码表示中,用符号位表示数值的正负,形式与原码表示相同,即0为正;1为负。
-
在反码表示中,数值0有两种表示方法。
-
反码的表示范围与原码的表示范围相同
【补码】正数的补码等于它的原码;负数的补码等于反码+1
-
在补码表示中,数值0只有一种表示方法。
-
负数补码的表示范围比负数原码的表示范围略宽。纯小数的补码可以表示到-1,纯整数的补码可以表示到-2^n。
-
减法用补码进行计算,然后将所得结果转为反码再转为原码
总结:反码是为了解决减法运算,补码是为了解决反码产生±0的问题