补码10000000表示多大?补码10000000的原码是多少啊,还是10000...
补码10000000表示多大?补码10000000的原码是多少啊,还是10000000吗,补码10000000的大小表示多少啊,是-128吗,最高位不是符号位吗?怎么能参...
补码10000000表示多大? 补码10000000的原码是多少啊,还是10000000吗,补码10000000的大小表示多少啊,是-128吗,最高位不是符号位吗?怎么能参与计算呢,我搞糊涂了,求教
展开
2个回答
展开全部
你的问题可以这样解决
[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
,以扩大补码表示范围
以上回答希望对你有用
[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
,以扩大补码表示范围
以上回答希望对你有用
展开全部
补码 10000000,表示多大? 原码是多少?
可以肯定的说:八位的原码,是不存在的。
因为,这个补码,是代表的十进制数-128 的。
而-128,有八位的补码,并没有八位的原码和反码。
因为,原码和反码的定义,都是有缺陷的:
一个数字零,它们却都定义了两个编码!
所以,八位的原码反码,只能表示-127 ~ +127。
无法表示-128。
因此,用“取反加一”求-0 或-128 的补码,都是行不通的。
-------------------------
求补码的正规做法,是使用定义式:
当 X >= 0, [ X ]补 = X; 零和正数不用变换。
当 X < 0, [ X ]补 = X + 2^n。 n 是补码的位数。
这个定义式,是通用的。你可以在书上找到的。
那么,[-128]补 = -128 + 2^8 = 1000 0000 (二进制)。
所以,八位的补码 1000 0000,就是代表数值-128。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询