Я должен ответить на следующий вопрос о языке ассемблера 6502:
"В стеке есть следующие значения (сначала верхний элемент): 0x01, 0x02, 0x03, 0x04, 0x05, 0x06
По адресу 0xc000
находится инструкция jsr 0xABCD
. Какое значение будет сохранено в счетчике программ после цикла выборки / выполнения и что будет верхним элементом стека. ? "
Я знаю, что счетчик программы будет 0xABCD
, но меня смущают элементы стека. Я знаю, что в архитектуре 6502 стек растет сверху вниз (с 0x01FF
до 0x0100
). Итак, я полагаю, указатель стека указывает на элемент 0x01
, верно?
Теперь адрес возврата должен быть program counter + 3
, потому что есть команда next
, поэтому я бы сказал, что 0xc003
будет помещено в стек, но в порядке обратного порядка байтов, поэтому c0
будет верхним элементом. Это верно?