怎么求补码的原码?

原码求补码是取反加1,那补码求原码应该是减1取反啊.... 原码求补码是取反加1,那补码求原码应该是减1取反啊. 展开
 我来答
橘子闪烁
推荐于2019-10-27 · TA获得超过7.5万个赞
知道答主
回答量:291
采纳率:100%
帮助的人:16.5万
展开全部

已知一个数的补码,求原码的操作其实就是对该补码再求补码:

1、如果补码的符号位为“0”,表示是一个正数,其原码就是补码。

2、如果补码的符号位为“1”,表示是一个负数,那么求给定的这个补码的补码就是要求的原码。

例如:已知一个补码为11111001,则原码是10000111(-7)。因为符号位为“1”,表示是一个负数,所以该位不变,仍为“1”。

其余七位1111001取反后为0000110;再加1,所以是10000111。

扩展资料:

数的表示:

在数的表示上通过人为的定义来消除编码映射的不唯一性,对转换后的10000000强制认定为-128。当然对原码和反码也可以做这种强制认定,那为什么原码和反码没有流行起来?原码和反码没有流行起来,是因为在数的运算上对符号位的处理无法用当时已有的机器物理设计来实现。

由于原码和反码在编码时采用了硬性的人工设计,这种设计在数理上无法自动的通过模来实现对符号位的自动处理,符号位必须人工处理,必须对机器加入新的物理部件来专门处理符号位,这加大了机器设计难度,加大的机器成本,不到万不得已,不走这条路。

参考资料:

百度百科--补码

狼道刀2
推荐于2019-08-04 · TA获得超过1.4万个赞
知道答主
回答量:9
采纳率:100%
帮助的人:2168
展开全部

以补码10010110为例,有两种计算方法求原码:

算法1: 

补码=原码取反再加1的逆运算。

10010110是补码,应先减去1变为反码,得10010101;

由反码取得源码即除符号位外其他为按位取反,得11101010,即十进制数的-106。

算法2:

负数补码速算法,由最低位(右)向高位(左)查找到第一个1与符号位之间的所有数字按位取反的逆运算

10010110是补码,符号位与最后一个1之间的所有数字按位取反,得11101010

扩展资料

计算机系统中的补码和原码:

在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号位和数值域统一处理;同时,加法和减法也可以统一处理。此外,补码与原码相互转换,其运算过程是相同的,不需要额外的硬件电路。

原码(true form)是一种计算机中对数字的二进制定点表示方法。原码表示法在数值前面增加了一位符号位(即最高位为符号位):正数该位为0,负数该位为1(0有两种表示:+0和-0),其余位表示数值的大小。原码不能直接参加运算,可能会出错。

例如数学上,1+(-1)=0,而在二进制中00000001+10000001=10000010,换算成十进制为-2。显然出错了。

参考资料:百度百科-补码

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
铃屋学姐
高粉答主

推荐于2019-11-05 · 关注我不会让你失望
知道答主
回答量:192
采纳率:72%
帮助的人:9.3万
展开全部

已知一个数的补码,求原码的操作分两种情况: 

(1)如果补码的符号位为“0”,表示是一个正数,所以补码就是该数的原码。 

(2)如果补码的符号位为“1”,表示是一个负数,求原码的操作可以是:符号位为1,其余各位取反,然后再整个数加1。 

例如,已知一个补码为11111001,则原码是10000111(-7):因为符号位为“1”,表示是一个负数,所以该位不变,仍为   “1”;其余7位1111001取反后为0000110;再加1,所以是10000111。

扩展资料:

总结:

已知一个数的补码,求原码的操作其实就是对该补码再求补码。

补码转换为原码:符号位不变,数值位按位取反,末位再加1。即补码的补码等于原码。

正整数的原码、反码和补码是一样的,即看到符号位(第一位)是0,就可以照着写出其他两种码。所以已知正数的补码,求其原码,两个数是一样的。

参考资料:百度百科——补码

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
李成勇律师
推荐于2017-09-25 · 律师
李成勇律师
采纳数:406 获赞数:1270

向TA提问 私信TA
展开全部
补码的补码就是原码!
带符号数中只有负数的原码反码和补码是不一样的,正数的这些都是一样的,涉及码制转换!

原码求补码是取反加1
补码求原码还是是取反加1(符号位除外)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2008-03-18
展开全部
如果是带符号的数,那么看它的最高位,如果是1,则是负数,符号位不变,减一后取反码。
是正数就不变。它的补码就是它的源码
原码=补码-1后的反码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式