为什么要定义原码,反吗和补码

 我来答
huanglenzhi
2017-11-18 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
采纳数:117538 获赞数:517181
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。

向TA提问 私信TA
展开全部

其实从原码到补码是一个层层递进的关系,也是一个在错误中逐步发展的过程。也就是说利用原码运算减法时出现的错误,为了解决出现了反码运算,但是反码运算时又出现了让人不满意的地方,于是为了更好的追求出现了补码。


模、补数的出现

初中还是高中或者是小学让我们知道了这样一件事情:

把某物体左旋转  90 度,和右旋转 270度,在不考虑圈数的条件下,最终的位置是相同的;

270+90=360;

把分针倒拨 20 分钟,和正拨 40分钟,在不考虑时针的条件下,效果也是相同的;

20+40=60;

把数字 87,减去 25,和加上75,在不考虑百位数的条件下,效果也是相同的;

25+75=100;

……。

总之都是会有一定的前提不考虑,可见它们的关系就是互补。而计算得到的360、60、100就是分别在不同情况下的模。知道模,就可以求一个数的补数。

用补数代替原数,就可以用加法代替减法,出现一个进位就是一个模的值。

二进制的模:

有多少位参加运算,模就是1的后面加上多少个0。

例如:2位二进制数参加运算,模就是100;即2^2=4

8位二进制数参加运算,模就是100000000;即2^8=256

二进制的补码:

求二进制数的补数,目的是往计算机里面存放。一般情况下,都是以
8 位二进制数来讨论补码。

计算时加上正数,是不需要进行求取补码的;只有进行减法(或者加上负数),才需要对减数求补码。补码就是按照
这个要求来定义的:正数不变,负数即用模减去绝对值。

例如:X = -126,其补码为 1000 0010,计算方法如下:

1 0000 0000

— 0111 1110

—————————————

1000 0010

其实就是为了存储数据,为了计算简单。既然补码就可以做到这些了,那为什么书上还有把原码和反码写出来呢蛊惑人心呢?个人认为它们是没有太多用处的,在计算机里是不存在的,就是为了可以形象的说明二进制是怎么求出补码的,只起到一个中间计算过程的作用,要不一下子写出一个数的补码也是要转几个弯的。

做而论道
高能答主

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

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

计算机中,根本就不使用原码和反码。

补码的功能,类似于:

  时针,倒拨 3 小时,可以用正拨 9 小时代替。

利用这种思路,计算机中的负数,也可以用正数(即补码)代替。

于是,计算机中,就没有负数了。

同时,减法运算,也都不存在了。

因此,借助于补码,就能统一加减法,从而简化计算机的硬件。

这就是使用补码的原因。

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

在时钟中,时针转一圈,周期是 12。

  正拨 9 代替倒拨 3,其算法是:9 = -3 + 周期 12。

分针,倒拨 X 分,也可用正拨(-X + 周期 60)代替。

在三角函数中,周期是 2π。

  一个负角度,也能用周期,算出等效的正角度。

  如:-π/2,就可以转换成成:+3π/2。

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

在计算机中,8 位 2 进制,称为一个字节。

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

那么:

-1 的补码是:-1 + 256 = 255 = 1111 1111(二进制)。

-2 的补码是:-2 + 256 = 254 = 1111 1110(二进制)。

。。。

正数,则必须直接参加运算,不许作任何转换。

即:正数,不存在补码。

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

补码,是从计数系统的周期性,推导出来的。

补码与“原码反码符号位”,并无半点关系。

由“取反加一”学习补码,就不会理解补码的作用和产生的原因。

那么,为什么要定义原码、反码、符号位?

老外数学不好,也就只能用这些骚操作,来求补码了。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百红说0v
2017-11-18 · TA获得超过135个赞
知道答主
回答量:83
采纳率:33%
帮助的人:13.2万
展开全部
因为用原码无法表示负数啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式