为什么现代计算机都用补码来表示整数

 我来答
做而论道
高能答主

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

就是为了:简化硬件,省钱。

因为,负数,可以用一个正数(补码)代替。

如: 24 - 1 = 23

   24 + 99 = (一百) 23

忽略进位,用 +99 就可以代替-1。

那么,借助于补码,就可以,把减法转换为加法运算。

因此,在计算机中,只需设置一个加法器,便可加减通吃了。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
黄先生
2024-12-27 广告
矩阵切换器就是将一路或多路视音频信号分别传输给一个或者多个显示设备,如两台电脑主机要共用一个显示器,矩阵切换器可以将两台电脑主机上的内容renyi切换到同一个或多个显示器上;迈拓维矩矩阵切换器种类齐全,性价比高,支持多种控制方式,为工程商采... 点击进入详情页
本回答由黄先生提供
沙里波特
2024-11-26 · TA获得超过5251个赞
知道大有可为答主
回答量:1.1万
采纳率:95%
帮助的人:640万
展开全部

虽然,计算机用是二进制数。

但是,进行数学计算时,二进制数、十进制数,并没有本质的区别。

十进制数中,有补数,二进制数中,有补码。

它们,都是雷同的。

其实,所谓的补码,并不是什么什么码,它也是数。

你就看十进制吧。

当你忽略了进位,+99,能代替-1:

●  27 + 99 = (进位 1) 26,

●  27 - 1 = 26。

舍弃了进位,正数,就当负数、加法,就能完成减法运算。

在计算机中,虽然用的是二进制,也同样是这样的。

这些代替负数的正数,就是计算机专家发明的“补码”了。

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

什么是补数?  99、1,又是什么关系?

若两数之和,为 10、100、1000 ... 10^n,这两个数,就是【互为补数】。

如:4 和 6、88 和 12、455 和 545 等等,就互为补数。

99、1,显然也是互为补数。

------

对于二进制数来说,若两数之和,为 2^n,也就是互为补数了。

八位二进制的进位,是 2^8 = 256 = 1 0000 0000 (二进制)。

那么,1 和 255、2 和 254、...、128 和 128,都是互为补数的关系。

------

在前面已经证明:在十进制时,-1,就可以用 +99 代替。

同样道理,在二进制时:-1 就可以用 255 (1111 1111) 代替。

其它的:-2 用 1111 1110、-3 用 1111 1101、、、代替即可。

这就是计算机专家发明的“补码”了。

其实,补码,并不是什么码,它也是正常的数值。

所谓的:[ X ]补 + [ Y ]补 = [ X + Y ]补,也不过是故弄玄虚而已。

关键问题是:舍弃进位! 他们却没有认真的强调一下。

------

其实,进位、舍弃进位、补数,这些都是小学算术中的概念。

计算机专家如果好好的上个小学,就一定不会编造那些无聊的概念了。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
可轩163
推荐于2017-10-09 · TA获得超过1.3万个赞
知道大有可为答主
回答量:4824
采纳率:88%
帮助的人:1787万
展开全部
机器数用补码表示的好处:
原码简单,适用于乘除运算,但用原码表示的数进行加减法运算比较复杂。
补码,减法运算可以用加法来实现,例如 [X-Y]补 = [X]补 +[-Y]补,
而且,数的符号位也可以参与运算,便于运算结果的正负及是否溢出判断。
因此在计算机中大都采用补码来进行加减及乘除运算。
(不仅是整数,小数亦可用补码表示)
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式