2017-02-17 15 views
-1
mov  ss:ebp+FFFFFBE0,edx : TRG+30 

сс в стек сегмент EBP это указатель базы стекаЗначение кода сборки

FFFFFBE0 является адрес перехода EBP + FFFFFBE0 его точка ячейки памяти стека

edx : TRG+30; путать

Я считаю, что перемещение данных (EDX: ТРГ + 30) в месте (EBP + FFFFFBE0)

+1

Какая программа вы используете, показывая вам этот выход? Я предполагаю ': TRG + 30' - комментарий, который дает вам представление о том, где указывается операнд памяти. Это не является частью инструкции IMHO –

+1

Обратите внимание, что очень вероятно, что 'mov [ss: ebp + 0xFFFFFBE0], edx' на самом деле' mov [ss: ebp-0x00000420], edx'. – Brendan

ответ

0

код загружается 4 байт целое число от регистра edx в массиве/структуре, называемой TRG.
Точнее, это запись байтов 0x30..0x33 из этой структуры.

Ваш отладчик неправильно выполняет инструкцию. Оно должно быть:

mov [ss:ebp-0x420],edx 

edx только регистр, его содержимое из какого-нибудь кода перед утверждением показано.
ebp - базовый указатель, который обычно указывает на хранение локальных переменных в подпрограмме.
: TRG+30 - комментарий, вставленный отладчиком; он не является частью инструкции.

При интерпретации сборки вы никогда не сможете просматривать инструкцию изолированно, вы должны увидеть ее как часть последовательности инструкций.

+0

так двоеточие: есть для комментариев? – user143252

+0

Что я могу сказать, ваш отладчик сломан. – Johan

+0

@ пользователь143252 обычно нет. Вы уверены, что это была двоеточие? Разве это не может быть ваш шрифт + разрешение + ЖК-дисплей выглядит точно так же, как двоеточие? – Ped7g

 Смежные вопросы

  • Нет связанных вопросов^_^