若[x]补 =1,x1x2x3x4x5x6,其中x取0或1,若要x>-32,应当满足
原题描述:
若
[
x
]
补
=
1
,
x
1
x
2
x
3
x
4
x
5
x
6
,
其中
x
取
0
或
1
,若要
x
>
−
32
,应当满足()
若\left [ x \right ]_补 =1,x_1x_2x_3x_4x_5x_6,其中x取0或1,若要x>-32,应当满足()
若[x]补=1,x1x2x3x4x5x6,其中x取0或1,若要x>−32,应当满足()
A
:
x
1
为
0
,其他各位任意
B
:
x
1
为
1
,其他各位任意
C
:
x
1
为
1
,
x
2
…
…
x
6
至少有一位为
1
A
:
x
1
为
0
,
x
2
…
…
x
6
至少有一位为
1
A: x_1为0,其他各位任意\newline B: x_1为1,其他各位任意\newline C: x_1为1,x_2……x_6至少有一位为1\newline A: x_1为0,x_2……x_6至少有一位为1
A:x1为0,其他各位任意B:x1为1,其他各位任意C:x1为1,x2……x6至少有一位为1A:x1为0,x2……x6至少有一位为1
题目答案:C
解析:
1、题目中 x 的补码是以 1 开头,说明x是一个负数,且满足 x > -32,也就是 -32 < x < 0。
2、x一定可以写成 x = -32 + y,只要保证 y 是介于 1 和 31 之间的一个数。比如 x 是 -10,可以写成 -32 + 22。
3、由2可以得出
[
x
]
补
=
[
−
32
]
补
+
[
y
]
补
\left[ x \right ]_补 = \left[ -32 \right ]_补 + \left[ y \right ]_补
[x]补=[−32]补+[y]补
由于 y 是一个正数,原码与补码一致,且1 <= y <= 31
所以y的补码的范围:[0 000001 ~ 0 011111],(+32为 0 100000)
再写出 -32 的补码 : [1 100000],
两个补码相加得到的
[
x
]
补
,而
x
1
的位置,显然是
1
,且
x
2
…
…
x
6
至少会有一位存在
1
两个补码相加得到的[x]_补,而x_1的位置,显然是1,且x_2 …… x_6至少会有一位存在1
两个补码相加得到的[x]补,而x1的位置,显然是1,且x2……x6至少会有一位存在1