为何要用补码?

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

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

计算机系统中,数据,一律采用补码来表示和存储。

原因在于,使用补码,可以将举枝老加法和减法统一处理。

补码,就是补码,与原码反码毫无关系。

从原码反码开始学习,就不能理解“为何要用补码?”。

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

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

比如十进制运算:

  24 - 1 = 23

  24 + 99 = (一百) 23

舍弃进位,+99 就可以代替-1。

这时,减法,也就转换成加法了。

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

舍弃的进位,是 2 位 10 进制的计数周期:10^2 = 100。

求补数的公式,大家都可以推出来: 负数 + 周期。

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

其实,在三角函数中,大家都知道:

  -π/2 和 +3π/2,这两个角度,功能也是相同的。

负角度,和正角度,要怎么变换呢? 

也是用这样的公式: 正角度 = 负角度 + 周期(2π)。

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

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

8 位 2 进制的计数范围是:0000 0000 ~ 1111 1111。

换算成十进制,就是:0 ~ 255。

其计数周期是:2^8 = 256。

那么,-1 的补码就是 255 ( 即 1111 1111 )。

-2 的补码,是:-2 + 256 = 254 = 1111 1110。

。。。

-128 的补码是:128 = 1000 0000。

以上就是八位二进制所能代表的 128 个负数。

求补码的公式,也仍然是:负数 + 周期。

正数,不需要搭液变换,直接就可以进行运算。

所以,正数,根本就没有补码。

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

求补码,正升不必联系到“原码反码符号位取反加一”。

那些乱七八糟的事,都是不需要的。

老外数学不好,万般无奈,才弄这些“隔路”的花样。

皮曦希智美
2019-11-29 · TA获得超过1207个赞
知道小有建树答主
回答量:1736
采纳率:100%
帮助的人:10.1万
展开全部
原码
,祥运
反码

补码
,这三种编码都是用来表示
十进制数
负数的,因为前两种编码使用时会出现错罩宴历误,但是补码不会,所以一般在计算机内部都以补码的物搜形式存储十进制负数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式