第二章
2. 将下列二进制数分别转换为十进制数和十六进制数。
(1)111010B
0011 1010B =3AH=3×16+10=58
(2)10111100.111B
1011 1100.1110B =BC.EH=11×16+12+14×16-1=188.875
(3)0.11011B
0.1101 1000B =0.D8H=13×16-1+8×16-2=0.84375
(4)11110.01B
0001 1110.0100B=1E.4H=16+14+4×16-1=30.25
6. 选取字长n为8位(和16位两种情况),求下列十进制数的补码。
(1)X=-33
X=-33=-21H=-010 0001B
[X]补=1101 1111
(2)Y=+33
Y=+33=21H=0010 0001B
[Y]补=0010 0001
补码的最小负数(3)Z=-128=-1000 0000B
[Z]补=10000000 (可直接写出)
或根据补码的定义[x]补=2n+x(mod 2n)求解:
[Z]补=28-128=1 0000 0000B-1000 0000B =1000 0000B
[Z]补=28-128=256-128=128=1000 0000B
若字长 n=16
则 Z=-128=-000 0000 1000 0000B
[Z]补= 1111 1111 1000 0000
(4) N=+127
[N]补 =0111 1111
(5)A=-65
A=-65=-41H=-100 0001B
[A]补 =1011 1111
(6)B=+65
B=+65=+41H=+100 0001B
[B]补=0100 0001
(7)C=-96
C=-96=-60H=-110 0000B
[C]补 =1010 0000
(8)D=+96
D= + 96= +60H= +110 0000B
[D]=01100000
8. 设机器字长为8位,最高位为符号位,试对下列各式进行二进制补码运算,并判
断结果是否溢出。
(1)43+8
43=2BH=010 1011B 8= 000 1000B
[43]补=0010 1011B [8]补=0000 1000B
C7=0 、 C6=0 OF=C7C6=0 无溢出
[43+8]补=0011 0011B
43+8 = 011 0011B=33H=51 结果正确
(3)60+90
60=3CH= 011 1100B 90=5AH=101 1010B
[60]补=0011 1100B [90]补=0101 1010B
C7=0 、C6=1 OF=C7C6=1 有溢出,结果错误。
(5)-33+(-37)
-33=-21H=-010 0001B -37=-25H=-010 0101B
[-33]补=1101 1111B [-37]补=1101 1011B
C7=1 、C6=1 OF=C7C6=0 无溢出
[-33+(-37)]补=1011 1010B
-33+(-37)=-100 0110B=-46H=-70 结果正确
(6)-90+(-70)
-90=-5AH=-101 1010B -70=-46H= -100 0110B
[-90]补=1010 0110B [-70]补=1011 1010B
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论