指出下列指令的错误 感谢 1. MOV AH,BX 2. MOV [BX],[SI] 3. MOV AX,[SI][DI] 4. MOV BYTE PTR[BX],1000

请帮忙解答 十分感谢
2024-12-03 05:49:24
推荐回答(3个)
回答(1):

都是错的。
1. MOV AH,BX--两个寄存器,不一样大。
2. MOV [BX],[SI]--源、目的,不可都是存储器。
3. MOV AX,[SI][DI]--SI、DI,不可合用。
4. MOV BYTE PTR[BX],1000--目的地是字节属性,数据就不可超过255。

回答(2):

第一个BX,AH的数据宽度不同。第二个不明确要传送的是字还是字节。第三个di、si不可合用。第四个1000超过了bx的最大宽度。而楼上说第二个目的和源不能都是寄存器的说法是错误的,为此我还特意查了教育局指定的周明德编著的微机原理教材。

回答(3):

mov [BX],[SI] 的确是因为源和目的不可都是存储器,2楼不信用debug试一试。这是错误的指令。
用寄存器做中转就可以了 。