我不确定这个add
指令在做什么:
add 0x0(%rbp,%rbx,4),%eax
如果是:
add %rbx,%eax
我知道它将添加
rbx
的内容和eax
中的内容,并将它们存储回eax
中。但是,0x0(%rbp,%rbx,4)
让我失望了。 最佳答案
那是因为它是愚蠢而令人困惑的AT&T语法。
在正常的Intel语法中,它是add eax,dword ptr[rbp+4*rbx+0]
,即将rbp + 4 * rbx处的dword添加到eax。