Таблица 14.
Адрес (Состояние ША) |
Содержимое памяти (Состояние ШД) |
Комментарии |
000 |
061 |
;Инициализация указателя стека |
001 |
067 |
;000 067 |
002 |
000 |
|
003 |
317 |
;Вызов подпрограммы по адресу L=010 |
010 |
311 |
;Возврат из подпрограммы |
004 |
166 |
;Останов |
Принципиально команды CALL и RST отличаются только возможностью (в первом случае) и невозможностью (во втором) вызова подпрограммы, находящейся по произвольному адресу. В то же время команда RST имеет длину 1 байт против 3 в команде CALL, что делает ее более удобной для вызова часто используемых подпрограмм.
Программа 10 демонстрирует работу нескольких прерывающих друг друга вложенных программ.
Таблица 15.
Адреса (L) |
Команды |
Мнемоника команд |
Комментарии |
000 |
061 |
LXI SP |
;Инициализация указателя стека |
001 |
067 |
B2 |
;адресом 000 067 |
002 |
000 |
B3 |
|
003 |
317 |
RST 1 |
;Вызов подпрограммы по адресу L=010 |
004 |
166 |
HLT |
;Останов |
010 |
327 |
RST 2 |
;Вызов подпрограммы по адресу L=020 |
011 |
311 |
RET |
;Возврат из подпрограммы 1 |
020 |
337 |
RST 3 |
;Вызов подпрограммы по адресу L=030 |
021 |
311 |
RET |
;Возврат из подпрограммы 2 |
030 |
347 |
RST 4 |
;Вызов подпрограммы по адресу L=040 |
031 |
311 |
RET |
;Возврат из подпрограммы 3 |
040 |
357 |
RST 5 |
;Вызов подпрограммы по адресу L=050 |
041 |
311 |
RET |
;Возврат из подпрограммы 4 |
050 |
311 |
RET |
;Возврат из подпрограммы 5 |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.