长度为1个字节的二进制整数,若采用补码表示,且由5个1和3和0组成,则表示最小的十进制整数为?
4个回答
展开全部
补码的每一位,都代表一个数值。
在八位的补码中,最高位的 1,就代表-128。
其余位,都是正数。
各位的数值如下所示:
----------------------------
位置: 最高位 bit6 bit5 bit4 bit3 bit2 bit1 末位
数值:-128 64 32 16 8 4 2 1
----------------------------
如果想要得到最小值,显然,-128,就必须选中。
其它位都是正数,就应该尽量选小的。
所以,最小值的补码,就是: 1 0 0 0 1 1 1 1。
它代表的数值,就是:-128 + 8 + 4 + 2 + 1 =-113。
如果想要得到最大值,最高位的-128,就不能选了。
其它位都要选大的,这就是: 0 1 1 1 1 1 0 0。
它代表的数值,就是: 64 + 32 + 16 + 8 + 4 =+124。
展开全部
(10001111)补码=-113d
追问
10001111怎么得到?
追答
5个1,3个0呀!
8位二进制补码的表示范围是-128~+127,最高位是符号位,0表示+,1表示-。
如果要让一个整数数最小,它应当是个负数,符号位应当为1。负数的补码是对原码取反+1,低7位的二进制值越小,表示的整数也就越小(负数的绝对值就越大)。那么4个1和3个0组成的二进制值最小的就是0001111了,加上符号位1,就是10001111。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
嗯,可以取负数绝对值最大的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询