指令“mov [si],[bx]”有什么问题?部件

时间:2017-04-25 09:41:53

标签: assembly x86

mov [si],[bx]

我认为它会起作用,但事实并非如此。想法是从[si]值的[bx]地址到Sub值。抱歉愚蠢的问题

1 个答案:

答案 0 :(得分:1)

括号表示"内存访问"。您的代码将让处理器从内存中获取值([bx])并将其存储到内存([si])中,但这不是MOV instruction的有效编码。实际上,没有单个x86指令执行这样的内存操作。你必须把它分成两部分,如:

mov ax, [bx]
mov [si], ax

(请注意,此处ax没有什么特别之处 - 它只是一个" scratch"寄存器。)