21.12.2005, 14:46
общий
это ответ
Здравствуйте, Solodov Evgeniy Vladimirovich
Начну с того, что lea dx,mem не эквивалентна mov dx,ofset mem.
У них только результат работы одинаков!
mov загружает непосредственный опеанд в регистр.
lea загружает эффективный адрес в регистр, в данном случае просто адрес переменной mem.
В случае lea eax,[ecx+edx], вычисляется эффективный адрес выражения [ecx+edx],
как сумма значений указанных регистров, и результат присваивается eax.
Это не только выглядит как косвенная адресация, это она и есть. :)
Так что, ничего странного тут нет.
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен