指出下列指令中哪些是错误的,错在什么地方。 (1)MOV DL,AX (2)MOV 8650H,AX (3)MOV DS,0200H (4)MOV [BX],[1200H] (5)MOV IP,0FFH (6)MOV [BX+SI+3],IP (7)MOV AX,[BX][BP] (8)MOV AL,ES:[BP] (9)MOV DL,[SI][DI] (10)MOV AX,OFFSET 0A20H (11)MOV AL,OFFSET TABLE (12)XCHG AL,50H (13)IN BL,05H (14)OUT AL,0FFEH
正确答案:(1)长度不匹配
(2)立即数不能做目的操作数
(3)段寄存器不能用立即数赋值
(4)两个内存单元不能直接传送数据
(5)IP 不能用指令直接修改
(6)指令中不能出现 IP
(7)BX/BP 应与 SI/DI 搭配
(8)正确
(9)SI/DI 应与 BX/BP 搭配
(10)OFFSET 后应跟内存单元
(11)偏移地址为16 位,AL 长度不够
(12)立即数不能用于XCHG
(13)IN 必须用 AL/AX
(14)操作数顺序反向;地址应为 8 位
(2)立即数不能做目的操作数
(3)段寄存器不能用立即数赋值
(4)两个内存单元不能直接传送数据
(5)IP 不能用指令直接修改
(6)指令中不能出现 IP
(7)BX/BP 应与 SI/DI 搭配
(8)正确
(9)SI/DI 应与 BX/BP 搭配
(10)OFFSET 后应跟内存单元
(11)偏移地址为16 位,AL 长度不够
(12)立即数不能用于XCHG
(13)IN 必须用 AL/AX
(14)操作数顺序反向;地址应为 8 位
答案解析:有

微信扫一扫手机做题