MOV(%r11,%r12,1),%edx是什么意思?

时间:2010-05-21 16:35:26

标签: assembly x86 att mov addressing-mode

这条指令做了什么?

mov (%r11,%r12,1), %edx

2 个答案:

答案 0 :(得分:7)

here。它说

  

在AT& T语法中,内存是   以下列方式引用,

segment-override:signed-offset(base,index,scale)

在页面上有一些例子。我发现这是最好的:

GAS memory operand   NASM memory operand
------------------   -------------------
(%ecx,%ebx,2)    [ecx+ebx*2]
AT& T语法中的

mov source, destination将值从源复制到目标。还要考虑edx的大小。您认为mov将复制多少字节(4)?

答案 1 :(得分:-1)

mov (%r11,%r12,1), %edx该指令用于计算地址(索引寻址模式)。

  • %r11是基地地址
  • %r12是一个索引
  • 1是一个乘数

它的工作方式如下:

adres = base adres + index * multipler

base adres和multipler必须是常量(base adress可以注册),index必须是register。