【发布时间】:2011-02-22 10:54:03
【问题描述】:
这条指令有什么作用?
mov (%r11,%r12,1), %edx
【问题讨论】:
-
另请参阅AT&T syntax tag wiki,了解有关语法的更多详细信息,以及指向更多文档的链接。
标签: assembly x86 att mov addressing-mode
这条指令有什么作用?
mov (%r11,%r12,1), %edx
【问题讨论】:
标签: assembly x86 att mov addressing-mode
看here。它说
在 AT&T 语法中,内存是 引用方式如下,
segment-override:signed-offset(base,index,scale)
页面下方有一些示例。我觉得这是最好的:
GAS memory operand NASM memory operand
------------------ -------------------
(%ecx,%ebx,2) [ecx+ebx*2]
mov source, destination 在 AT&T 语法中将值从源复制到目标。还要考虑edx的大小。你认为mov 会复制多少字节(4)?
【讨论】:
mov (%r11,%r12,1), %edx该指令用于计算地址(索引寻址方式)。
%r11 是基本地址%r12 是一个索引1 是一个乘法器它是这样工作的:
adres = 基本地址 + 索引 * 倍数
基址和倍数必须是常数(基址可以是寄存器),索引必须是寄存器。
【讨论】: