如果我说:
lea (%eax,%eax,2), %edx
我被教导它本质上意味着:
edx = eax + eax * 2
这个格式是如何工作的?
我想这会导致第二个问题。如果我有这样的事情:
add -0x4(%esi, %ebx, 4), %eax
我知道第一个操作数被添加到第二个操作数,然后存储在第二个操作数中,但同样,我不明白的是第一个操作数的符号。另一个例子是如果我有:
cmp %eax, (%esi, %ebx, 4)
...,这是否意味着正在将 %eax 的值与以下值进行比较:
esi + ebx * 4
...?我尝试搜索了很多这样的东西,但我想我没有使用正确的词来找到有意义的答案,所以我决定在这里发帖。