为什么-8的补码用四位二进制人为规定表示为1000?懂得告诉我。。不懂就

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

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

为什么-8 的补码用四位二进制人为规定表示为 1000?

用四位补码,可表示 16 个数值。

数值的范围,是:-8 ~ +7。

-8 的补码,并不是人为规定的。

因为,-8 没有四位的原码和反码。

-8 的补码,你用“取反加一”是求不出来的。

所以,你才误解为“人为规定”。

没有原码和反码,补码,怎么求呢?

你往下看:

数值 0,补码就是:0000。

-1 的补码,就是:0000-1 = 1111。

其它的补码,你就慢慢减吧。。。

-8 的补码,就是 1000。

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

同样的道理,-128 的八位补码,你也得这么求。


初音_490
2022-05-15 · TA获得超过121个赞
知道答主
回答量:155
采纳率:95%
帮助的人:59.9万
展开全部

计算机的硬件,只有加法器。

负数、减法,都必须用加法来完成。

你看十进制:

  24 - 1 = 23

  24 + 99 = (一百) 23

舍弃进位,+99 可以当做-1 进行运算。

+99 就是-1 的补数。

补数(补码),就是一个“代替负数进行运算的正数”。

对于 2 位 10 进制数,求补数的公式:

  补数=负数+10^2。

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

计算机中,用二进制,就称为补码。

对于 8 位 2 进制数,求补码的公式:

  补码=负数+2^8。

-1 的补码是:-1 + 256 = 255 = 1111 1111。

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

。。。

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

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

如果四位二进制,-8 的补码,就是:

  -8 + 2^4 = 8 = 1000(二进制)。

求补码,不要用“原码取反加一”。

那个方法,是无法求出-8 的补码的。

而且,你也不能理解使用补码的意义。

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

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我爱的是你的姐
2023-09-02
知道答主
回答量:5
采纳率:0%
帮助的人:1439
展开全部
两种理解角度,
一个是-8不能够用四位二进制数表示,用5位表示补码后应该是11000,而要求用四位表示后得到的就是1000即舍弃了最高位。
实际上这种理解是不对的,我觉得应该得这么理解,计算机是不管你什么取反加一,什么反码补码的,这些都是人为加上去的,实际上补码的存在形式就是“求补”,就像一个所求角a的补角是180-a一样,四位二进制数,当我们确定是有符号数之后,最高位是1表示负数,那么低三位所表示的就是8-(需要补得数的绝对值),所以-8的补码就是1(表示负数)000(8-ABS(8)=0),也就是1000,具体的你也可以看看其他的比如说-4,1100,就是100(8-4=4)这也是一个道理
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式