为什么-1在二进制码中只表示正数而不表示负数?

 我来答
仁昌爱娱乐
高粉答主

2022-09-16 · 专注关心娱乐
仁昌爱娱乐
采纳数:760 获赞数:459870

向TA提问 私信TA
展开全部

二进制码中,采用最高位是符号位的方法来区分正负数,正数的符号位为0、负数的符号位为1。剩下的就是这个数的绝对值部分。通过将负数转为二进制原码,再求其原码的反码,最后求得的补码即负数的二进制表示结果。

比如整数-1。先取1的原码:00000000 00000000 00000000 00000001,得反码: 11111111 11111111 11111111 11111110,最后得补码: 11111111 11111111 11111111 11111111,即-1在计算机里用二进制表示结果。

扩展资料:

在计算机中,除了十进制是有符号的外,其它如二进制、八进制、16进制都是无符号的。补码中正数与原码正数表示一样。补码中负数是采用2的补数来表示的,即把负数先加上2.以便将正数与负数的相加转化为正数与正数相加,从而克服原码表示法做加减法的困难。

由于负数的补码是2一|x|,故求负数的补码时,实际上要做一次减法,这是不希望的。可以发现,只要将原码正数的每位取反码,再在所得数的末位加1,则正好得到负数的补码,这简称为对尾数的“取反加1”。

做而论道
高能答主

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

为什么-1 在二进制码中只表示正数而不表示负数?

不仅是-1。

任何负数,在计算机中,的的确确,都是用正数表示的。

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

负数,在计算机中,是用补码表示的。

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

使用了补码之后,计算机中,就没有负数了。

而且,也就没有了减法运算。

那么,用一个加法器,就能横行天下了。

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

正数,怎么就能代替负数呢?

用十进制来说明,比较容易理解。

限定,只使用 2 位数来计数,循环周期就是 10^2 = 100。

可以有: 25 - 1 = 24

     25 + 99 = (一百) 24

如果你舍弃进位,仅保留 2 位,+99 就能代替-1 !

而且,加法,就代替了减法运算 !

同样,+98 也可以代替-2。

。。。

限定了位数,舍弃进位,正数就能代替负数。

这正数,可称为“负数的补数”。

替换公式:正数 = 负数 + 周期。

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

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

转换公式:补码 = 负数 + 2^n, n 是补码的位数。

那么,-1 的 8 位补码,就是:

   -1 + 2^8 = 255 = 1111 1111 (二进制)

255 = 1111 1111,的的确确,这就是一个正数。

用它计算,如果你舍弃进位,它就当做-1。

     如果你保留进位,它就是 255。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式