Для организации стековой памяти необходимо определить начальный адрес (вершину стека).

Примечание: в некоторых МПС начальный адрес стека определяется автоматически.

Для задания вершины стека используются два варианта команд:

1-ый вариант:

Б1 Б2 Б3 LXI
младший разряд Адрес регист- ровой пары
старший разряд

(SР)←(< Б3>< Б2>)

SP – шестнадцатиразрядный указатель стека, т.е. в указателе стека

2-ой вариант:

Б1 SPHL

(SP)←(H-L)

Запись содержимого регистровой пары в стековую память:

Команда записи регистровой пары в стековую память

PUSH rr

где rr – В-C, D-E, H-L, PSW.

Например:

PUSH В; Содержимое пары регистров В-С записывается в стековую память по адресу SP-1 и SP-2. После выполнения команды записи содержимого в стековую память в указателе стека (SP) изменяется адрес стековой памяти (уменьшается его значение на два: SP=SP-2).

Команда чтения содержимого стека в регистровую пару (чтение из стековой памяти)

РОР rr

где rr – В-C, D-E, H-L, PSW.

По этой команде содержимое стековой памяти (два байта) из ОЗУ записываются в одну из регистровых пар РОН или PSW. После выполнения команды содержимое указателя стека увеличивается на два SP=SP+2.

Например:

РОР B; Содержимое двух ячеек стековой памяти по адресу SP+1 и SP+2 записывается в пару регистров B-C, а указатель вершины стека после выполнения команды принимает значение SP=SP+2.

6.2. Команда обращения к подпрограмме (CALL).








Дата добавления: 2015-10-09; просмотров: 885;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.