微机系统原理与接口技术第3章习题答案.docVIP

  • 42
  • 0
  • 约 9页
  • 2017-02-09 发布于天津
  • 举报

微机系统原理与接口技术第3章习题答案.doc

微机系统原理与接口技术第3章习题答案

“微机系统原理与接口技术”第三章习题解答 下列各条指令是否有错?如果有,请指出错误之处并改正。 MOV DS,1000H MOV [100],23H ADD AX,[BX+BP+6] PUSH DL IN AX,[3FH] OUT 3FFH,AL LES SS,[SI] POP [AX] IMUL 4CH SHL BX,5 INT 300 XCHG DX,0FFFH 答:(1)错误。不允许直接向段寄存器送立即数,可改为: MOV AX,1000H MOV DS,AX (2)错误。该指令在语法上是对的,即可以把一个立即数送入一个存储单元;但是如果考虑实际编译,则第一操作数前应加上BYTE PTR或WORD PTR说明,否则汇编程序会因不能确定操作数长度而指示出错。可改为: MOV BYTE PTR [100],23H (3)错误。不能同时使用两个基址寄存器BX、BP进行间接寻址,可改为: ADD AX,[BX+DI+6] (4)错误。堆栈操作应以字为单位进行,而DL是一个字节。可改为: PUSH DX (5)错误。在输入/输出指令中,8位端口地址应直接写在操作数处。可改为: IN AX,3FH (6)错误。端口地址3FFH已超出8位二进制表示范围,16位端口地址应用DX。可改为: MOV DX,3FFH OUT DX,AL (7)错误。LES指令的目操作数应该是通用寄存器,不能是段寄存器。可改为: LES AX,[SI] (8)错误。AX不能用于间接寻址,间接寻址只能用BX、BP、SI、DI四个寄存器之一。可改为: POP [BX] (9)错误。立即数不能做乘法指令的操作数,可改为: MOV BL,4CH IMUL BL (10)错误。当逻辑移位的次数大于1时,应该用CL指示次数。可改为: MOV CL,5 SHL BX,CL (11)错误。操作数300 ( 255,已超出有效的中断类型码范围。 (12)错误。XCHG指令不允许立即数做它的操作数。可改为: MOV CX,0FFFH XCHG DX,CX 请指出以下各指令的源、目的操作数所使用的寻址方式。 MOV SI,2100H SBB DISP[BX],7 AND [DI],AX OR AX,[609EH] MOV [BX+DI+30H],CX PUSH ES:[BP] CALL [DI]DISP JNZ Short_ label 答:(1)源操作数:立即数寻址;目的操作数:寄存器寻址 (2)源操作数:立即数寻址;目的操作数:(带位移量的)基址寻址 (3)源操作数:寄存器寻址;目的操作数:变址寻址 (4)源操作数:直接寻址; 目的操作数:寄存器寻址 (5)源操作数:寄存器寻址;目的操作数:(带位移量的)基址变址寻址 (6)源操作数:带段超越的基址寻址;目的操作数:隐含寻址 (7)只有一个操作数,为(带位移量的)变址寻址 (8)只有一个操作数,为相对寻址 在已学的指令中,可实现累加器清0的单条指令有哪些?比较它们的功能。 答:共有以下四种方法: MOV AX,0 ;仅将累加器清0,不会影响任何标志位 SUB AX,AX ;累加器清0的同时影响所有状态标志,具体地有: ;ZF、PF置1,CF、AF、SF、OF均清0 AND AX,0 ;将累加器清0,ZF、PF置1,CF、OF 、SF清0 XOR AX,AX ;将累加器清0,ZF、PF置1,CF、OF 、SF清0 若要判断某带符号数的正、负而不影响其原值,可使用哪些方法? 答:设带符号数为oprd,判断方法可有如下几种: 执行指令 ADD oprd,0 之后,判断SF:SF =0,oprd为正数,否则为负。 执行指令 SUB oprd,0 之后,判断SF:SF =0,oprd为正数,否则为负。 执行指令 CMP oprd,0 之后,可直接判断SF:SF =0,oprd为正数,否则为负;或者再接着执行指令 JGE NOMINUS(即同时判断SF、OF),若程序转移至NOMINUS处,则oprd为正数,否则为负;同理,亦可在在执行完CMP oprd,0 之后再接着执行指令 JL NOMINUS,若程序转移至NOMINUS处,则oprd为负数,否则为正。 执行指令 CMP oprd,80H(或8000H)之后,判断CF:CF =1,oprd为正数,否则为负。 执行指令 AND oprd,oprd(或全“1”)之后,判断SF:SF =0,oprd为正数,否则为负。 执行指令 TEST oprd,oprd(或全“1”)之后,判断SF:SF =0,oprd为正数,否则为负。 执行指令 TEST oprd,80H(或8000H)之后,

文档评论(0)

1亿VIP精品文档

相关文档