Loading... ## 示例 | 十进制数 | 原码 | 反码 | 补码 | | --- | --- | --- | --- | | 0 | 0000 | 0000 | 0000 | | 1 | 0001 | 0001 | 0001 | | 2 | 0010 | 0010 | 0010 | | 3 | 0011 | 0011 | 0011 | | 4 | 0100 | 0100 | 0100 | | 5 | 0101 | 0101 | 0101 | | -1 | 1001 | 1111 | 0001 | | -2 | 1010 | 1101 | 1110 | | -3 | 1011 | 1100 | 1101 | | -4 | 1100 | 1011 | 1100 | | -5 | 1101 | 1010 | 1011 | 反码: 反码只是为了求补码而产生的中间值 1. 对于正数: 反码等于原码 2. 对于负数: 反码等于除了符号位全部取反 补码:为了使计算机中定义的负数(开头为1即为负数)可以正常运算 1. 对于正数: 补码等于原码 2. 对于负数: 补码等于原码的反码 + 1 3. 补码的特殊能力: 对一个原码求两次补码,会得到它本身。 ## 补码计算实例 -1 + -1 | 求和 | 第一个数 | 第二个数 | | --- | --- | --- | | 十进制 | -1 | -1 | | 原码 | 1001 | 1001 | | 补码 | 1111 | 1111 | 补码相加 得到: 1110 对这个值再求一次补码即可返回到原码的值: 1110 -> 1001 -> 1010 得到 -2 最后修改:2020 年 09 月 18 日 05 : 33 PM © 允许规范转载