指出以下指令中,哪些指令是非法的,并说明为什么(80386系统)。 (1) MOV AX,12[EBX][SI*16] (2) RCR EAX,10 (3) PUSH 5678H (4) POP 1000H (5) MOV [EAX+EAX],EAX (6) MOV AL,[ESP+ESP*2] (7) MOV BL,[AX+12] (8) IMUL AL,BL,12
正确答案:
(1)非法,比例因子只能是1、2、4、8,不能是16;
(2)合法;
(3)合法;
(4)非法,POP指令的目的操作数不能是立即数;
(5)合法;
(6)非法,ESP只能作为基址寄存器,不能作为变址寄存器;
(7)非法,在386系统中AX不能作为基址寄存器,也不能作为变址寄存器;
(8)合法。
(2)合法;
(3)合法;
(4)非法,POP指令的目的操作数不能是立即数;
(5)合法;
(6)非法,ESP只能作为基址寄存器,不能作为变址寄存器;
(7)非法,在386系统中AX不能作为基址寄存器,也不能作为变址寄存器;
(8)合法。
答案解析:有
微信扫一扫手机做题