При использовании как MOV и LEA инструкции по сборке, что делает это на самом деле означает, когда кто-то пишет:Сборочный регистр Арифметика?
mov DWORD PTR [esp+4], 0x80484c
lea eax,[ebp-40]
В частности, когда они пишут информацию в скобках []. Я знаю, что lea перемещает адреса и перемещает контент mov, но когда они вычисляют адреса в lea или mov, как это работает? Это то же самое, что и арифметика указателя в C?
'это то же самое, как арифметики указателей в C' Нет, это не так. Полноценный ответ можно найти в любой достойной документации/книге сборки x86 и свободно доступной. –
Имейте в виду, что в 'lea' нет реального доступа к памяти: он просто вычисляет адрес операнда и сохраняет его. Компиляторы иногда используют его для выполнения арифметики без знака - хотя и не в этом конкретном случае. –
Не только подробные ответы могут быть найдены в сборке, вы можете найти множество очень полных и ясных ответов здесь, чтобы получить быстрый поиск. –