Что означает синтаксическая константа (регистр)?

Я изучаю синтаксис AT&T для архитектуры Intel x86 и немного не понимаю значения следующего синтаксиса:

  1. Шрб $1, 2(%esp)
  2. Incw 2(%esp)

Моя первоначальная интерпретация была такой:

  1. esp = (esp + 2) >> 1
  2. исп = исп + 2

Я не могу найти никаких ссылок на использование увеличения таким образом, что заставляет меня поверить, что я здесь более фундаментально ошибочен.

Верна ли моя интерпретация, или я совершенно неправ? Спасибо за ваше время.


person Community    schedule 25.02.2012    source источник


Ответы (1)


Ни один. Точно так же, как (%esp) относится к ячейке памяти по адресу %esp (например, рассматривая %esp как указатель), 2(%esp) относится к ячейке памяти по адресу %esp + 2.

person Community    schedule 25.02.2012
comment
Ага! Большое спасибо, я не знал, что родители сделали это. - person ; 25.02.2012