我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:高清跑狗图 > 读整数内存 >

为什么整数在内存中用补码表示而不用原码和反码

归档日期:05-03       文本归类:读整数内存      文章编辑:爱尚语录

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  用补码存储整数,便于将两个数相减统一到加法中,保证结果是 正确的,因为 CPU 中只有加法器而无减法器。另外, 0 的补码形 式唯一,而其原码和反码都可以有两种表示,用两个不同的二进 制序列表达同一个整数,显然也是不合理的。 运算统一性举例:求 -2-3 ,即( -2 ) + ( -3 ) -2 的原码: 0 -3 的原码: 1 相加结果: 1 0 此结果中, 1 为多余位舍弃, 0 为符号位,因此计算结果为 +5 , 与实际不符合 -2 的反码: 1 -3 的反码: 0 相加结果: 1 1 此结果中, 1 为多余位舍弃, 1 为符号位,余下的 15 位取反再加 1 得到: ,即绝对值为: 7 ,因此计算结果为 -7 ,与实际不符合 -2 的补码: 1 -3 的补码: 1 相加结果: 1 1 此结果中, 1 为多余位舍弃, 1 为符号位,余下 15 位取反再加 1 得到: ,即绝对值为 5 ,因此答案为 -5, 是正 确的 在计算机应用基础课程或微机原理课程中,都有形式化的公式来 描述这种运算关系,这里只是通过一个特例来验证以补码形式存 储整数减法可理解为加上一个负数,对得到的结果我余进位舍 去,所得到的结果仍按补码理解就是正确的了。

本文链接:http://sarlnogues.com/duzhengshunacun/178.html