计算机中的负数为什么用补码存储

 我来答
老汉知年进攻H
高能答主

2022-02-28 · 世界很大,慢慢探索
知道大有可为答主
回答量:1.5万
采纳率:50%
帮助的人:341万
展开全部
计算机中的负数是为了方便运算,所以计算机才会采用补码存储数据。补码是计算机方便加法运算的编码。例如100(10进制)100/16=6余46/16=0余6。所以100的16进制数是64H以8位二进制来说64H=01100100B正数的补码和原码相同。
所以100的补码还是01100100。
另假设还有个数是-109109的16进制,是01101101-109的原码,就是11101101(首位是符号位)-109的反码,就是10010010(除了符号位其他各位分别取反)。109的补码就是10010011(反码加1)。现在运算100-109=100+(-109)。01100100+10010011=11110111这个结果就是-9的补码。如果换成其他编码运算就不会这么简单了。
例1653如原码相加的话存在符号位进位的问题等等。对于计算机而言。数值的计算补码是最方便的。
沙里波特
2024-11-22 · TA获得超过5250个赞
知道大有可为答主
回答量:1.1万
采纳率:95%
帮助的人:637万
展开全部

相对于原码和反码,补码表示法有什么优点和缺点

-----------------------

优点:

用补码代表带符号数之后,带符号数的加法运算方法,与无符号数的算法,就是完全相同的。 所以,带符号数、无符号数,就可以共用同一个加法器。 而原码和反码,它们根本就没有计算功能。如果硬要用它们做计算,就必须为其特制一种加法器。

缺点:

用补码代表带符号数,许多初学者看不懂。 没有原码直观。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
做而论道
高能答主

2022-07-28 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.2亿
展开全部

所谓的补码,其实,就是一个“代替负数运算”的正数。

用十进制比较容易理解。

如果限定【仅用 2 位 10 进制数】,就可以有:

  24 - 1 = 23

  24 + 99 = (一百) 23

保留 2 位数,舍弃进位,+99 就和-1 就是等效的。

+99,就称为-1 的补数。

+98,是-2 的补数。

。。。

求补数的公式:

  补数 = 负数 + 10^n, n 是位数。

计算机使用 2 进制,补数,就改称为:补码。

求补码的公式:

  补码 = 负数 + 2^n, n 是位数。

--------------------------

计算机中,为什么要用补码表示负数呢?

因为,用上了补码,就可以消灭负数!

那么,在计算机中,也就不存在减法运算了。

因此,计算机的硬件,就可以化简了。

原码和反码,都不具备这种功能。

所以,计算机中,根本就不存在它们。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式