返回列表
程序员进制常识:原码、反码、补码
原码
最高位表示符号(0正1负),其余位表示数值。例如8位原码:+1=00000001,-1=10000001。缺点:0有两种表示(+0和-0),且加减运算复杂。
反码
正数的反码与原码相同;负数的反码是符号位不变,其余位取反。例如-1的8位反码:11111110。缺点:仍然存在-0(11111111)。
补码
正数的补码与原码相同;负数的补码是反码+1。例如-1的补码:11111111。补码解决了0的表示唯一性问题,且加减法统一,是计算机实际使用的编码方式。
示例(8位)
- +1:原码00000001,反码00000001,补码00000001
- -1:原码10000001,反码11111110,补码11111111
- -128:只有补码10000000(原码和反码无法表示)
本工具可帮助您查看不同进制的表示,结合上述概念理解计算机内部数据。