当前位置:
文档之家› 微型计算机原理_课后习题答案
微型计算机原理_课后习题答案
6.有如下程序: MOV AL,45H ADD AL,71H DAA 加法调整指令P100 MOV BL,AL MOV AL,19H ADC AL,12H DAA 加法调整指令P100 MOV BH,AL 执行后,BX =?标志位PF =?CF =?
45H
+7(BL)=16H
7、 试判断下列运算执行之后,OF、CF、ZF、SF、PF和AF的状态: OF:溢出标志、CF:进位标志、ZF:零标志、SF:符号标志、 PF:奇偶标志(低8位1的个数为偶数,则置1,否则置0)、 AF:辅助进位标志(第3位有进位或借位,则置1,否则置0)
(3)46H 59H 0100,0110
-33+(-37)=? -70
[33]原码 1010,0001
-90+(-70)=?
[90]原码 1101,1010
[33]补码 1101,1111
[90]补码 1010,0110
[-37]原码 1010,0101
[-70]原码 1100,0110
[-37]补码 1101,1011 1101,1111
Cs 1,C p 1,无溢出,OF 0
1010,0111
CF 1,ZF 0,SF 1,PF 1,AF 1 1110,1101
1,0001,0101,0000,0000 Cs 1,C p 1,无溢出,OF 0 CF 1,ZF 0,SF 0,PF 1,AF 0
0101,1001
(3)46H 59H 59H 89D [89]原 1101,1001 [89]补 1010,0111
(1) A400H 7100H
1110,1101
0100,0110
1010,0100,0000,0000 0111,0001,0000,0000
(1) JMP BX;IP=? (2) JMP [BX][SI];IP=? 解: 1)是段内间接寻址,所以IP=1256H 2)是段内间接寻址 偏移地址:(BX)+(SI)=1256H+528FH=64E5H 物理地址:DS×10H+64E5H=264E5H [264E5]=2450H 所以IP=2450H
2000H:1002H 2
起始逻辑地址为2000H:1000H
2000H:1003H 2
第n个字的逻辑地址为
2000H:1004H 3
段地址:偏移地址首址+(n-1)×2
2000H:1005H 3
第16个字的逻辑地址为
…
段地址:偏移地址首址+(16-1)×2=2000H:101EH
物理地址为:2000 ×10H +101E=2101EH
REP MOVSB
(2) CLD
LEA DI,ES:[0404H]
MOV CX,0080H
XOR AX,AX
2)将从内存0404H单元开
REP STOSW
始的128个字单元清零
10.假设在下列程序段的括号中分别填入以下命令:
(1) LOOP LLL
(2) LOOPNZ LLL
(3) LOOPZ LLL
…
16
16
6、若已知当前栈顶的逻辑地址为3000H:0200H,试问压入两个 字后栈顶的逻辑地址和物理地址是什么? 若又弹出3个字后, 则栈顶的逻辑地址和物理地址又是什么? 解:压入两个字后,SP的内容为 (SP)-字数×2=0200H-2×2=01FCH 所以逻辑地址为3000H:01FCH 物理地址为301FCH
8-18=?-10
[8]补码 0000,1000
[-18]原码 1001,0010
[-18]补码 1110,1110
0000,1000
1110,1110 1111,0110 [10]补码
1000,1010
6.设机器字长为8位,最高位为符号位,试用“双高位”判别法判断下述 二进制运算有没有溢出产生。若有,是正溢出还是负溢出?
[-70]补码 1011,1010 1010,0110
1101,1011 1011,1010
cs 1,c p 1,无溢出 1100,0110 [70]原码
1011,1010 10110,0000 cs 1,c p 0,负溢出 0110,0000 [96]原码
10、将下列8421 BCD码表示成十进制数和二进制数:
19H
+01H
+12H
2CH
+06H
32H CF=0,(BH)=32H
(BX)=3216H
16H=00010110B
PF=0
7、 执行下列程序段,指出此程序段功能。
(1) MOV CX,10
LEA SI,First LEA DI,Second
1)将源串FIRST的10个字节 搬移至目标串SECOND
CX≠0循环;
ZF=0且CX≠0循环; ZF=1且CX≠0循环;
指令执行后,AX =? BX =? CX =? DX =?
(1) 01111001B
(2) 10000011B
BCD码为0111,1001B 十进制数为79 二进制数为0100,1111B
第二章
5、若已知一个字串的起始逻辑地址为2000H:1000H,试求该
字串中第16个字的逻辑地址及物理地址。 2000H:1000H 1
解:
2000H:1001H 1
物理地址=段地址×10H+偏移地址
第二章
2. 设机器字长为6位,写出下列各数原码、补码和移码:
10101
11111
10000
-10101
-11111
-10000
真值 -10101
原码 110101
补码 101011
移码 101010
x 10101 [x]移码 2n 1 x n6
111111
10101
101010
5. 设机器字长为8位,最高位为符号位,试对下列各算式进 行二进制补码运算:
Cs 1,C p 1,无溢出,OF 0 CF 1,ZF 0,SF 0,PF 1,AF 1
第三章 3、 设DS = 2000H,BX = 1256H,SI = 528FH,偏移量 = 20A1H, [232F7H] = 3280H,[264E5] = 2450H。若独立执行下述指令后,请 给出对应IP寄存器的内容。