下列数据传送指令中正确的是()

A MOV DS,ES
B MOV AL,WORD PTR 【BX+DI】
C MOV AL,BYTE PRT【SI+DI】
D MOV CX,【SI】
可能有抄错请谅解
请说明三个错的为什么错

呵呵 俺来了
正确的答案是(D)
MOV CX,【SI】;源操作数[SI]是采用寄存器间接寻址方式
A 源操作数ES 是段寄存器不可以做源操作数
B 源操作数WORD PTR 【BX+DI】是一个16位的数据 (字) 而目的操作数AL为一个字节(8位数) 二者不匹配
C 源操作数BYTE PRT【SI+DI】是采用基址加变址的寻址 SI是不能做基址寄存器的
只有BX或BP才能做基址寄存器

哈哈 满意就选满意回答吧
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-18
以下讨论仅限386以下机型:

A MOV DS,ES
不能在段寄存器之间传送数据B MOV AL,WORD PTR 【BX+DI】
源,目的操作数宽度不符C MOV AL,BYTE PRT【SI+DI】
SI,DI不能同时用在(相对)基址变址中,没有这种组合
D MOV CX,【SI】
合法
相似回答