第二章
5.分别写出下列十进制数的原码、反码和补码。
7/16,5/16,4/16,1/16,0,-1/16,-4/16,-5/16,-7/16
答: 原码 反码 补码
7/16 0.0111 0.0111 0.0111
5/16 0.0101 0.0101 0.0101
4/16 0.0100 0.0100 0.0100
1/16 0.0001 0.0001 0.0001
+0 0.0000 0.0000 0.0000
-0 1.0000 1.1111 0.0000
-1/16 1.0001 1.1110 1.1111
-4/16 1.0100 1.1011 1.1100
-5/16 1.0101 1.1010 1.1011
-7/16 1.0111 1.1000 1.1001
7.已知下列数的补码表示,请写出它们的真值。
[x]补=0.10100 [x]补=1.0111 [x]补=1.0000
答:二进制真值分别为:0.101,-0.1001,-1。
10.若机器字长16位,以下几种情况能表示的数据范围是多少?
1)无符号整数 2)原码定点小数 3)补码定点小数
4)原码定点整数 5)补码定点整数
答:1)无符号整数 0~216-1 2)原码定点小数 -(1-2-15 ) ~ 1-2-15
3)补码定点小数 -1~ 1-2-15 4)原码定点整数 -(215-1) ~ 215-1
5)补码定点整数 -215 ~ 215-1
14.将下列数转换为IEEE单精度浮点数:
1)28.75
解:1)十进制数28.75转化为二进制数:11100.11B,规格化为11100.11=1.110011×24
该数为正,符号位=0;移码表示的阶码=10000011;尾数=110 0110 0000 0000 0000 0000
以短浮点数
格式
pdf格式笔记格式下载页码格式下载公文格式下载简报格式下载
存储该数为0,10000011, 110 0110 0000 0000 0000 0000=41E60000H
21.某循环冗余校验码的生成多项式为x3+x2+1,若发送信息位 1111 和 1100,则CRC 码分别为什么?接收端收到的CRC 码:0000000、1001111、0010111、1011000中哪些是发生了错误的?
答:A(x)=1111 和1100 左移r=3位后A(x)·x3=1111000 和1100000
g(x)= x3+x2+1=1101 (r+1=4位)
A(x)·x3/g(x)=1011+111/1101 和1001+101/1101
A(x)·x3+R(x)=1111111 和1100101-----这就是2个CRC码
接收到的CRC 码除以生成多项式余数不为0的出错:1001111、1011000。
第三章
9.用原码一位乘法和原码两位乘法分别计算X×Y :
a. X= -0.11011, Y=0.11101
解:a原码一位乘 |X|=00.11011→寄存器B,|Y|=0.11101→寄存器C,0→寄存器A。
部分积A
乘数C
运算过程
00.00000
1
1
1
0
1
C5 = 1,+ |X|
+
00.11011
00.11011
部分积右移一位
→
00.01101
1
1
1
1
0
C4 = 0,+0
+
00.00000
00.01101
部分积右移一位
→
00.00110
1
1
1
1
1
C3 =1,+ |X|
+
00.11011
01.00001
部分积右移一位
→
00.10000
1
1
1
1
1
C2 = 1,+ |X|
+
00.11011
01.01011
部分积右移一位
→
00.10101
1
1
1
1
1
C1 = 1,+ |X|
+
00.11011
01.10000
部分积右移一位
→
00.11000
0
1
1
1
1
由于两数异号,所以得X×Y = -0.1100001111
10. 用补码一位乘法和补码两位乘法分别计算X×Y :
a. X= -0.11011, Y=0.11101
a 补码一位乘 部分积0→寄存器A,[X]补=11.00101→寄存器B,[Y]补=0.11101→寄存器C。用Booth法求解过程如下:
部分积A
乘数 C
附加位 说明
00.00000
0.
1
1
1
0
1 0
C5C6 = 10,+[-X]补
+
[-X]补
00.11011
00.11011
右移一位
→
0015011_________________________________________________________________________________________________________________________.01101
1
0
1
1
1
0 1
C5C6 = 01,+[X]补
+
[X]补
11.00101
11.10010
右移一位
→
11.11001
0
1
0
1
1
1 0
C5C6 = 10,+[-X]补
+
[-X]补
00.11011
00.10100
右移一位
→
00.01010
0
0
1
0
1
1 1
C5C6= 11,+0
+
0
00.00000
00.01010
右移一位
→
00.00101
0
0
0
1
0
1 1
C5C6 = 11,+0
+
0
00.00000
00.00101
右移一位
→
00.00010
1
0
0
0
1
0 1
C5C6 = 01,+[X]补
+
[X]补
11.00101
11.00111
1
0
0
0
1
最后一步不移位
所以[X×Y]补=11.0011110010,X×Y =-0.1100001111
12 用原码加减交替法和补码加减交替法计算X÷Y。a.X= -0.1001 Y=0.1101
解:a 加减交替法 |X|=00.1001,|Y|= 00.1101,|Y|变补 = 11.0011
被除数/部分余数A
商C
0
0
0.1
0.1 1
0.1 1 0
0.1 1 0 1
说明
0 0.1 0 0 1
0
0
0
0.
0
-|Y|
+|Y|变补
1 1.0 0 1 1
1 1.1 1 0 0
0
0
0
0.
0
余数<0,商0,左移一位
←
1 1.1 0 0 0
0
0
0
0.
0
+|Y|
0 0.1 1 0 1
+|Y|
0 0.0 1 0 1
0
0
0
0.
1
余数>0,商1,左移一位
←
0 0.1 0 1 0
0
0
0
1.
0
+|Y|变补
1 1.0 0 1 1
-|Y|
1 1.1 1 0 1
0
0
0
1.
0
余数<0,商0,左移一位
←
1 1.1 0 1 0
0
0
1
0.
0
+|Y|
0 0.1 1 0 1
+|Y|
0 0.0 1 1 1
0
0
1
0
1
余数>0,商1,左移一位
←
0 0.1 1 1 0
0
1
0
1
0
+|Y|变补
1 1.0 0 1 1
-|Y|
0 0.0 0 0 1
0
1
0
1
1
余数>0,商1
0 0.0 0 0 1
所以商Q= -0.1011,余数r=-0. 0001×2-4。
a 补码加减交替法 [X]补=11.0111,[Y]补=00.1101,[-Y]补 =11.0011
被除数/余数A
商C
0
0
0.1
0.1 1
0.1 1 0
0.1 1 0 1
说明
1 1.0 1 1 1
0
0
0
0.
0
[X]补和[Y]补异号,加除数
+[Y]补
0 0.1 1 0 1
0 0.0 1 0 0
0
0
0
0.
1
余数和除数同号,商1
←
0 0.1 0 0 0
0
0
0
1.
0
,左移一位 下次减除数
+[-Y]补
1 1.0 0 1 1
1 1.1 0 1 1
0
0
0
1.
0
余数和除数异号,商0
←
1 1.0 1 1 0
0
0
1
0.
0
左移一位,下次加除数
+[Y]补
0 0.1 1 0 1
0 0.0 0 1 1
0
0
1
0.
1
余数和除数同号,商1
←
0 0.0 1 1 0
0
1
0
1.
0
左移一位,下次减除数
+[-Y]补
1 1.0 0 1 1
1 1.1 0 0 1
0
1
0
1
0
余数和除数异号,商0
←
1 1.0 0 1 0
1
0
1
0
0
左移一位,下次加除数
+[Y]补
0 0.1 1 0 1
1 1.1 1 1 1
←
1 1.1 1 1 1
1
0
1
0
1
末尾恒置1
商[Q]补= 1.0101,余数[r]补 = 11.1111×2-4。
第四章
12.某机器的16位单字长访内指令的格式如下:
4
2
1
1
8
操作码
Mode
@
I
D
其中,D为立即数或形式地址,补码表示;Mode为寻址模式,0表示立即寻址,1表示直接寻址,2表示基地址寻址,3表示相对寻址;@为间址标志,@=1表示间接寻址,@=0表示直接寻址;I为变址标志,I=1表示变址寻址,I=0表示非变址寻址。
设PC、Rx、Rb分别为指令计数器、变址寄存器、基址寄存器,EA为有效地址,试解答下列问
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
:
(1)该指令格式能定义多少种不同的操作?
(2)试写出立即寻址、直接寻址、基址寻址、变址寻址、相对寻址方式中计算有效地址EA的表达式。
(3)设基址寄存器为16位,在基址寻址时,可寻址的主存地址范围是多少?
(4)间接寻址时,可寻址的主存地址范围是多少?若采用多重间址,可寻址的主存地址范围又是多少?
解:(1)24=16。
(2)立即寻址:无EA
直接寻址:EA=D;D为指令中给出偏移量
基址寻址:EA=(Rb)+D;
变址寻址:EA=(Rx)+D;
相对寻址:EA=(PC)+D;PC为程序计数器,D为偏移量
(3)0~216-1
(4)间接寻址可寻址的主存地址范围为0~216-1,多重间址可寻址的主存地址范围为0~215-1。
13.某机的指令格式如下:
15 10
9 8
7 0
操作码
Mode
D
其中,D为立即数或形式地址,补码表示;Mode为寻址模式,0表示直接寻址,1表示用变址寄存器Rx1进行寻址,2表示用变址寄存器Rx2进行寻址,3表示相对寻址。若已知(PC)=1000H, Rx1=0005H,Rx2=1005H,请计算出下列指令的有效地址:
①8442H ②4545H
解:①8442H=1000 0100 0100 0010
因为Mode=0,所以为直接寻址,EA=D=0042H
②4545H=0100 0101 0100 0101
因为Mode=1,所以用变址寄存器Rx1寻址,EA=(Rx1)+D=0005H+45H=004AH