mov在这里做什么?
mov(%ebx,%eax,4),%eax
我已经看到mov用于将值从一个函数转移到另一个函数,但我不确定如何处理这种情况
segment:displacement(base register, offset register, scalar multiplier)
[在AT&T语法中等同于]segment:[base register + displacement + offset register * scalar multiplier]
在Intel语法中。(源)
所以mov(%ebx,%eax,4),%eax
和mov eax, [ebx + eax*4]
是等价的。也就是说,通过ebx + eax*4
形成一个地址,并从该地址加载一个双字到eax
。