补码的每一位,都代表一个数值。
在八位的补码中,最高位的 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。
由 4 个 1 和 4 个 0 组成补码,可表示的最大值是?
该补码是: 0 1 1 1 1 0 0 0。
它代表的数值是: 64 + 32 + 16 + 8 =+120。
同意一楼的回答
你写-8 那-9不比他小? 所以最先是-113