负数的补码怎么求

 我来答
沙里波特
2019-12-12 · TA获得超过5248个赞
知道大有可为答主
回答量:1.1万
采纳率:95%
帮助的人:633万
展开全部

正数的补码,是其本身。

负数的补码,就用它的正数,减一取反,即可得到补码。

如,已知:+9 补码是:0000 1001。

下面求-9 补码:

先减一:0000 1001 - 1 = 0000 1000;

再取反:1111 0111。

所以有:-9 补码 = 1111 0111。

这不就完了吗?

简不简单?意不意外?

原码反码符号位,讨论这些垃圾干嘛?

不都是骗人的吗?

猴子请来的妖妖
推荐于2017-11-17 · TA获得超过1086个赞
知道小有建树答主
回答量:409
采纳率:66%
帮助的人:147万
展开全部
计算机中的负数是以其补码形式存在的 补码=原码取反+1
一个字节有8位 可以表示的数值范围在 -128到+127
用二进制表示也就是 10000000 - 01111111(注意:最高位表示符号)
最高位是1的都是负数 最高位是0的都是正数
如-7 原码是 10000111 然后取反(最高位是符合不用取反)得11111000
加一 得11111001 那么-7的二进制数就是 11111001
再如 -10 原码是 10001010 取反得 11110101 加一得 11110110
那么-10的二进制数就是 11110110
二进制数是逢二进一 只有0和1两个数字 没有2
更多追问追答
追问
-2转化为四进制是什么怎么求的啊
追答
2的四进制  是  2
-2就不清楚了、
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
巴黎的雨37
2018-03-29 · TA获得超过3087个赞
知道小有建树答主
回答量:50
采纳率:100%
帮助的人:7448
展开全部

就比如-9 补码是11110111。

9的源码为00001001,如果是负数的话,补码为最高位置1,

其余取反也就是11110110,

然后在最低位加1即可即11110111。

计算机中的负数是以其补码形式存在的 补码=原码取反+1。


一个字节有8位 可以表示的数值范围在 -128到+127。 


用二进制表示也就是 10000000 - 01111111(注意:最高位表示符号)。


最高位是1的都是负数 最高位是0的都是正数。


如-7 原码是 10000111 然后取反(最高位是符合不用取反)得11111000。


加一 得11111001 那么-7的二进制数就是 11111001。


再如 -10 原码是 10001010 取反得 11110101 加一得 11110110。


那么-10的二进制数就是 11110110。


二进制数是逢二进一 只有0和1两个数字 没有2。

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

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

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

在计算机中,原码和反码,都是不存在的。

所以,求补码,也不必使用它们。

 

补码,是由一系列二进制码组成的。

实用的有 8 位或 16 位。高档的还有 32、64 位。

补码中的每一位,都对应一位十进制数。

要注意:最高位所对应的数值,是负数。

那么,八位的补码,各个位的数值,就是:

  128、64、32、16、8、4、2、1。

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

如果,有一个补码是:1011 1001。

它代表的数值,就是:-128 + 32 + 16 + 8 + 1 = -71。

倘若首位是 0,即为:0011 1001。

求数值,就更简单了:32 + 16 + 8 + 1 = +57。

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

掌握了上述规律,由数值,再求补码,也就很简单了。

例如,求-125 的八位补码。

  这是负数,首位一定是 1,代表了数值-128。

  与-125 相比较,还应该有个 3。

  用七位数值位表示 3,就是:000 0011。

综合在一起,-125 的补码,就是:1000 0011。

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

求补码、求数值,都是很简单的事。

并不需要拐到“原码反码取反加一符号位不变”去。

老外脑子不好用,才会弄出哪些个骚操作!

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
梦醒了相思838
推荐于2018-01-16 · TA获得超过201个赞
知道小有建树答主
回答量:374
采纳率:25%
帮助的人:113万
展开全部
说简单一些就是先减一然后按位取反,此为一个字节,9转换为二进制就是00001001,减一00001000,按位取反11110111。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式