七位二补
Seven bit and two compliment
如果我们对整数使用七位二进制补码表示,那么什么是
可以用这种方式表示的整数(事物)的数量?
可以用这种方式表示的最小(最多)负整数?
可以这样表示的最大正整数?
- 这是一道CS作业题,我很难回答和解释。任何帮助将不胜感激。
真的很简单
二进制计数通常像
>00000000 (8) = 0
>00000001 (8) = 1
>00000010 (8) = 2
>00000011 (8) = 3
>etc...etc.
在 7 位中,最后一位决定它是负数还是正数
1 为负,0 为正
> 10000000 = -128
> 10000001 = -127
> 10000010 = -126
> On...and on...
> 11111111 = -1
> 00000000 = 0
> 00000001 = 1
> 01111111 = 127
你能达到的最低值是 -128
最高可以达到 127
批准的答案不正确。
对于 2 的补码的 7 位,它的范围可以从 -64 到 63。(传统上,7 位只能达到 2^n-1,即 128,但 MSB 保留用于符号,因此我们可以有 6 位来表示数据。
我们将得到 64 个正值和 63 个负值,答案应该是 -64、63。)
不是,因为在二进制补码中,最高位是符号位。 0000001是+1,正数。
这就是为什么二进制补码的7位数字的范围是-64到63,因为64是不可表示的(否则就是负数)。
最大的负数是 1000000。前导 1 表示它是负数,要获得该数的大小,请翻转所有位 (0111111),然后加一 (1000000 = 64)。所以得到的数字是 -64 到 63。
如果我们对整数使用七位二进制补码表示,那么什么是 可以用这种方式表示的整数(事物)的数量? 可以用这种方式表示的最小(最多)负整数? 可以这样表示的最大正整数?
- 这是一道CS作业题,我很难回答和解释。任何帮助将不胜感激。
真的很简单
二进制计数通常像
>00000000 (8) = 0
>00000001 (8) = 1
>00000010 (8) = 2
>00000011 (8) = 3
>etc...etc.
在 7 位中,最后一位决定它是负数还是正数
1 为负,0 为正
> 10000000 = -128
> 10000001 = -127
> 10000010 = -126
> On...and on...
> 11111111 = -1
> 00000000 = 0
> 00000001 = 1
> 01111111 = 127
你能达到的最低值是 -128
最高可以达到 127
批准的答案不正确。 对于 2 的补码的 7 位,它的范围可以从 -64 到 63。(传统上,7 位只能达到 2^n-1,即 128,但 MSB 保留用于符号,因此我们可以有 6 位来表示数据。 我们将得到 64 个正值和 63 个负值,答案应该是 -64、63。)
不是,因为在二进制补码中,最高位是符号位。 0000001是+1,正数。
这就是为什么二进制补码的7位数字的范围是-64到63,因为64是不可表示的(否则就是负数)。
最大的负数是 1000000。前导 1 表示它是负数,要获得该数的大小,请翻转所有位 (0111111),然后加一 (1000000 = 64)。所以得到的数字是 -64 到 63。