Различия в сборке и перемещении [дубликаты]
На этот вопрос уже есть ответ здесь:
Использование LEA для значений, которые нет адреса / указатели? 3 ответаleal(%eax,%ecx,4), %edx
как я читал в своей книге по компьютерным системам, если есть предпосылки, что $ eax содержит значение x, а% ecx содержит y, то приведенное выше означает, что x + 4y помещается в% edx.
тогда если это
movl(%eax,%ecx,4), %edx
тогда разве это не то же самое с выражением leal выше?
Как я знаю, leal создает адрес, на который можно ссылаться, не ссылаясь сам по себе, как movl, но
Когда я виделleal(%eax,%ecx,4), %edx
равно положитьx+4y
вedx
зарегистрируйсяt it mean that it 'referenced'
% еand
% ecx` и извлеченные значения x и y для использования вычислений ??