《微机原理与接口技术》第三章作业答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《微机原理与接口技术》第三章作业答案
《微机原理与接口技术》第三章作业
一、书上P95作业题。
4、5、6、7
10、11、12、13、14、15
16、17、18、22、27
4、指出下列指令中的源操作数和目标操作数的寻址方式。
(1)MOV BX,1000H源操作数:立即寻址;目标操作数:寄存器寻址
(2)MOV AL,[BX] 源操作数:寄存器间接寻址;目标操作数:寄存器寻址
(3)MOV CX,[BP+10H] 源操作数:寄存器相对寻址;目标操作数:寄存器寻址
(4)MOV AL,ES:[BX+SI] 源操作数:基址加变址寻址;目标操作数:寄存器寻址
=0120H,在指令MOV AX,src中,求用下列表示源操作数src的有效地址EA和物理地址PA各是多少?
(1)100H[BX] EA=(100H+0100H)=0200H ;PA=2000*10H+0200H=20200H
(2)ES:[BX+DI] EA=0100H+0120H=0220H ;PA=2100*10H+0220H=21220H
(3)[BP] EA=0040H ;PA=1500*10H+0040H=15040H
(4)ES:[BX+10H] EA=0100H+0010H=0110H ;PA=21000H+0110H=21110H
(5) [BP+SI] EA=0040H+00A0H=00E0H ;PA=1500*10H+OOEOH=150E0H
(6) [1000H] EA=1000H ;PA=2000*10H+1000H=21000H
(7) ES:[DI] EA=0120H ;PA=2100*10H+0120H=21120H
(8) 1050H[BX+SI] EA=1050H+0100H+00A0H=11F0H ;PA=2000*10H+11F0H=211F0H
(9) DS:10C0H[BP+SI] EA=10C0H+0040H+00A0H=11A0H ;PA=2000*10H+11A0H=211A0H
(10) [BX+DI] EA=0100H+0120H=0220H ;PA=2000*10H+0220H=20220H
6、指出下列指令中的错误,并改正。
(1)MOV BL,30A0H 操作数不匹配改:MOV BX,30A0H
(2)MOV 0010H,AL立即数不可以作为目标操作数改:MOV AX,0010H
(3)XCHG AL,BX操作数类型不匹配改:XCHG AX,BX
(4)MOV [AX],3456H立即数送入存储器需要说明改:MOV WORDPTR [AX],3456H
(5)PUSH AL堆栈以字为操作单元改:PUSH AX
(6)POP CS POP不可以用CS为目标操作数改:POP AX
(7)MOV DS,1000H立即数不能直接送入段寄存器改:MOV AX,1000H MOV DS,
AX
(8)MOV [BX],[1000H]存储器不可以相互传送改:MOV AX,[1000H] MOV [BX],AX
(9)LDS (BX),[1000H]LDS使用时期目标为16位通用寄存器改:LDS BX,[1000H]
(10)LEA BX,CX LEA源操作数为存储器改:LEA BX,[CX]
7、已知(AX)=4A0BH,[1020H]单元中的内容为260FH,写出下列每条指令单独执行后的结果。
(1)MOV AX,1020H ;(AX)=1020H (2)XCHG AX, [1020H] ;(AX)=260FH (3)MOV AX,[1020H] ;(AX)=260FH (4)LEA AX,[1020H] ;(AX)=1020H
10、设一个堆栈段共有100H个字节单元,堆栈的起始地址为1250H:0000H,若在堆栈中存有5个字数据,问:
(1)栈顶的物理地址多少?
栈底:12600H
(2)栈底的物理地址是多少?
栈顶:12600-A=125F6H
(3)当前SS和SP的内容是多少?
SS:[1250H:0000H ]
SP: [1250H:00F6H ]
(4)若弹出两个数据,SP的内容是多少?SP:[1250H:00FAH ]
11、编程完成下列程序段,根据运算结果置标志位OF、SF、ZF、AF、PF、CF,并分析程序执行结果是否正确?为什么?(设字长n=8)
(1)30+64
(2)122-64
(3)96+52
(4)-68+(-72)
答:(1) MOV AL,30
MOV BL,64
ADD AL,BL
结果:0101111O F=0 SF=0 ZF=0 AF=0 PF=1 CF=0
(2) MOV AL,122
MOV BL,64
SUB AL,BL
结果:00111010 OF=0 SF=0 ZF=0 AF=0 PF=1 CF=0
(3) MOV AL,96
MOV BL,52
ADD AL,BL
结果:10010100 F=0 SF=0 ZF=0 AF=0 PF=1 CF=0
(4) MOV AL,-68
MOV BL,-72
ADD AL,BL
结果:01110100 OF=1 SF=0 ZF=0 AF=1 PF=1 CF=1
17、判断下列指令格式的对与错,并解释错在哪里。
(1)ADD 25H,AX (×)目标操作数不可以为立即数
(2)INC BX,1 (×)INC只有目标操作数