原码反码补码------相关理解
为什么计算机使用补码?(底层为什么使用,可以研究一下,一般只需要知道就行了)
简化运算:加减法统一,CPU 只需加法器。
避免零的歧义:只有一个零。
扩展表示范围:能多表示一个负数(如 -128)。
硬件成本低:电路设计更简单高效。
比如:
数字 (+5 )
原码:0000 0101
反码:0000 0101
补码:0000 0101
总结:正数的原码,反码,补码,都一样。(牢记即可)
数字(-5)
原码:1000 0101 (最高位符号位,0表示正数,1表示负数,除了符号位,其余按照绝对值来写)
反码:1111 1010(除符号位,其余按位取反)
补码:1111 1011(在反码的基础上,末尾加1)
重要结论
- 正数:原码 = 反码 = 补码
- 负数:
- 反码 = 原码(除符号位)取反
- 补码 = 反码 + 1
如果给出你反码或者补码求原码,要会。