Отображение памяти в сборке и ее содержимое

У меня есть два регистра 68000 A2 и A7. Первоначально A2 содержит $002C4178, а A7 содержит $0000A000. Затем последовательно выполняются следующие инструкции:

 MOVE.L #6,-(A2)
 MOVE.L #14,-(A7)
 MOVE.L #$24,(A7)
 MOVE.L (A7),$1000

Каково содержимое измененной памяти? Каково содержимое регистров A2 и A7 (в шестнадцатеричном формате)?


person Owais Rehman    schedule 25.02.2016    source источник
comment
Как вы думаете, каким может быть ответ?   -  person Paul R    schedule 25.02.2016
comment
Я понятия не имею. Я новичок, только начал практиковать такие вопросы.   -  person Owais Rehman    schedule 25.02.2016


Ответы (1)


A2 предварительно уменьшается в первой инструкции, поэтому:

$002C4178 => $002C4174

то #6 сохраняется по этому адресу.

Затем A7 предварительно уменьшается, поэтому:

$0000A000 => $00009FFC

то #14 сохраняется по этому адресу. Затем она немедленно перезаписывается следующей инструкцией, которая записывает #$24 (#36) по тому же адресу.

Наконец, указанное выше значение в ячейке, на которую указывает A7 (#$24), сохраняется по абсолютному адресу $1000.

person Paul R    schedule 25.02.2016