补码10000000表示多大?

补码10000000的原码是多少啊,还是10000000吗,补码10000000的大小表示多少啊,是-128吗,最高位不是符号位吗?怎么能参与计算呢,我搞糊涂了,求教... 补码10000000的原码是多少啊,还是10000000吗,补码10000000的大小表示多少啊,是-128吗,最高位不是符号位吗?怎么能参与计算呢,我搞糊涂了,求教 展开
 我来答
来自乌山心花怒放的彩叶草
高粉答主

推荐于2019-08-01 · 繁杂信息太多,你要学会辨别
知道答主
回答量:31
采纳率:0%
帮助的人:1.5万
展开全部

补码10000000 的最高位为1, 所以它表示的是负数。

1、原码是10000000,补码10000000的真值是-128。

2、我们将其八位全部取反,得到01111111, 然后加1,得到10000000。

3、8位二进制数的原码,可以表示:-127~+127;8位二进制数的补码,可以表示:-128~+127。

扩展资料:

特性

1、一个负整数(或原码)与其补数(或补码)相加,和为模。

2、对一个整数的补码再求补码,等于该整数自身。

3、补码的正零与负零表示方法相同。

模的概念可以帮助理解补数和补码。

“模”是指一个计量系统的计数范围。如时钟等。计算机也可以看成一个计量机器,它也有一个计量范围,即都存在一个“模”。例如:

时钟的计量范围是0~11,模=12。表示n位的计算机计量范围是0~2^(n)-1,模=2^(n)。

“模”实质上是计量器产生“溢出”的量,它的值在计量器上表示不出来,计量器上只能表示出模的余数。任何有模的计量器,均可化减法为加法运算。

例如:假设当前时针指向10点,而准确时间是6点,调整时间可有以下两种拨法:一种是倒拨4小时,即:10-4=6;另一种是顺拨8小时:10+8=12+6=6

在以12模的系统中,加8和减4效果是一样的,因此凡是减4运算,都可以用加8来代替。对“模”而言,8和4互为补数。实际上以12模的系统中,11和1,10和2,9和3,7和5,6和6都有这个特性。共同的特点是两者相加等于模。

对于计算机,其概念和方法完全一样。n位计算机,设n=8, 所能表示的最大数是11111111,若再加1成为100000000(9位),但因只有8位,最高位1自然丢失。又回了00000000,所以8位二进制系统的模为2^8。在这样的系统中减法问题也可以化成加法问题,只需把减数用相应的补数表示就可以了。把补数用到计算机对数的处理上,就是补码。

参考资料:

补码—百度百科


李乾银
推荐于2019-08-05 · TA获得超过1383个赞
知道答主
回答量:66
采纳率:0%
帮助的人:5万
展开全部

补码有以下几条规定:

  1. 若二进制每位全为0,则表示数0。

  2. 若最高位(即符号位)为0,表示正数。

  3. 若最高位为1, 表示是负数,而该负数的绝对值为:将每个二进制位(包括符号位)取反加1,得到一个二进制数,将该数看成无符号数,其值就是上述负数的绝对值。

补码10000000 的最高位为1, 所以它表示的是负数,我们将其八位全部取反,得到01111111, 然后加1,得到10000000。将该数看作无符号数,值为128,所以补码10000000的真值是-128,但8位原码的表示范围为-127~+127,所以无法表示。

拓展资料

计算机中的符号数有三种表示方法,即原码、反码和补码。三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位,三种表示方法各不相同。

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

参考资料百度百科_补码

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
美女爱吃饭
推荐于2019-10-13 · TA获得超过3540个赞
知道答主
回答量:0
采纳率:0%
帮助的人:0
展开全部
  1. 原码是10000000,补码10000000的真值是-128。

  2. 补码10000000 的最高位为1, 所以它表示的是负数,我们将其八位全部取反,得到01111111, 然后加1,得到10000000。

  3. 8位二进制数的原码,可以表示:-127~+127;
    8位二进制数的补码,可以表示:-128~+127。

拓展资料:

  1. 计算机中的符号数有三种表示方法,即原码、反码和补码。三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位,三种表示方法各不相同。

  2. 补码这个编码方案要解决的是如何在机器中表示负数,其本质意义为用一个正数来表示这个正数对应的负数。

参考链接:

百度百科_补码

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mingli179536
推荐于2017-06-16 · TA获得超过1103个赞
知道小有建树答主
回答量:508
采纳率:75%
帮助的人:135万
展开全部
你的问题可以这样解决
[10000000]补
=[10000000]反+1
=11111111+1
=(1)00000000
=00000000(最高位溢出了,符号位变成了0)

你可能会问 :
10000000这个补码表示的哪个数的补码呢?
其实这是一个规定,这个数表示的是-128
所以n位补码能表示的范围是
-2^(n-1)到2^(n-1)-1
比n位原码能表示的数多一个
到这里你可能已经了解得差不多了,但还是有点迷糊,那再举些说明的例子:
-0.1101
原码:1.1101
反码:1.0010 //负数时,反码为原码取反
补码:1.0011 //负数时,补码为原码取反+1
移码:0.0010 //原数+1
-1011
原码:11011
反码:10100 //负数时,反码为原码取反
补码:10101 //负数时,补码为原码取反+1
移码:00101 //原数+10000
1011
原码:01011
反码:01011 //正数时,反码=原码
补码:01011 //正数时,补码=原码
移码:11011 //原数+10000
0.1101
原码:0.1101
反码:0.1101 //正数时,反码=原码
补码:0.1101 //正数时,补码=原码
移码:1.1101 //原数+1
从以上您 可能已经观察出来了,其实让人不理解的原因在于:
无法用8位的源码表示
这个数的真值是 -2^7
源码的表示范围是 -(2^7 - 1)到 2^7 - 1
补码的表示范围是 -2^7 到 2^7 - 1
补码要多出一个数,而这个数就是你问的10000000

在源码里面00000000和100000000都是表示0
这样比较浪费,在补码里面,就把100000000当做
-2^7 ,以扩大补码表示范围
以上回答希望对你有用
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
做而论道
高能答主

2011-08-18 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.2亿
展开全部
如果 10000000 是补码,它的真值就是-128。
-128,并没有原码,不能用求反加一来求出补码。
追问
为啥没有源码啊,能说说吗
追答
原码、补码,各自都有一个定义表达式。
按照定义式,即可求出它们各自的表示范围。
8位二进制数的原码,可以表示:-127~+127;
8位二进制数的补码,可以表示:-128~+127。
----
很多教材,讲到补码,都要先学习原码、反码。
其实,补码就是补码,它并非是从原码、反码推导出来的。
补码有补码的定义式,直接就能从数字,求出补码。
求反加一,实在是多绕了两个弯。
并且,用求反加一,还求不出来-128的补码。
----
呵呵,提问者选择了错误的答案。
答案中,使用了减一、取反的一系列步骤,费了不少劲,也没有弄出来-128。

[10000000]补
=[10000000]反+1
=11111111+1
=(1)00000000
=00000000(最高位溢出了,符号位变成了0)

呵呵,最后,竟然,得出了0000 0000 !!!
连他自己也看出来,这不是-128 了。

毫无疑问,这方法、步骤,明显就是错误的。

-128 的补码,根本就不是用《求反加一》定义出来的。
求反加一,也不是通用的方法。

答案中,其它的篇幅,很是不少,但是,都和题目:
《补码10000000表示多大?》
没有关系。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式