内存间接寻址movl – assembly
我试图通过AT&T语法了解内存间接寻址在汇编语言中是如何工作的。
movl (%eax), %ebx movl %eax, (%ebx)
这是一个类似的问题,解释了内存间接寻址
这就是我所理解的:
在第一种情况下,您load
寄存器%eax
指向的数据并将其存储在%ebx
。
在第二种情况下,将寄存器%eax
的数据store
到寄存器%ebx
指向的地址空间。 我对么?
基本上语法是
movl source, destination
因此, movl (%eax), %ebx
确实将%eax指向的地址处的值复制到%ebx中。 而movl %eax, (%ebx)
将寄存器%eax中的值复制到%ebx指向的地址。
所以你的理解确实是正确的。