Составители:
90
В табл. 3.5 приведен один из возможных вариантов такой подпрограммы,
построенной по стандартной схеме: запоминание содержимого основных регистров
(шаг 3), отыскание источника прерывания (шаг 4), передача данных (шаг 5),
восстановление содержимого основных регистров (шаг 6) и, наконец, организация
выхода из подпрограммы (шаг 7). Подпрограмма предусматривает реакцию не только
на запросы от ВУ-1 и ВУ-3, но и на запрос от ВУ-2, который может возникнуть от
непреднамеренного нажатия на кнопку ГОТОВ около этого "устройства". В последнем
случае производится очистка флага ВУ-2, что эквивалентно отмене
непредусмотренного запроса.
Таблица 3.5
Первый вариант подпрограммы обработки прерываний для примера 3.3
Адрес
Содержимое
Комментарии
Код
Мнемоника
0
1
…
30
31
32
0000
С030
…
304C
F600
304D
BR 30
…
MOV 4C
ROL
MOV 4D
Ячейка для хранения адреса возврата (этот адрес будет
занесен сюда на 2-м шаге)
Первая команда подпрограммы – переход к основному
еѐ тексту, расположенному в ячейках 30–4D
…
Сохранение в буферных ячейках 4C и 4D содер-
жимого аккумулятора и регистра переноса Шаг 3
33
34
35
36
37
38
E101
C036
C039
E103
C043
C03E
TSF 1
BR 36
BR 39
TSF 3
DR 43
BR 3E
Опрос флага ВУ-1. Если он сброшен, то переход
к опросу флага ВУ-2. В противном случае
переход на ввод данных из ВУ-1 Шаг
Опрос флага ВУ-3. Если он сброшен, то переход 4
к опросу флага ВУ-2. В противном случае
переход на ввод данных из ВУ-3
39
3A
3B
3C
3D
3E
3F
40
41
42
43
F200
E201
E001
3025
C044
F200
404C
E303
E003
C044
Е002
CLA
IN 1
CLF 1
MOV 25
BR 44
CLA
ADD 4C
OUT 3
CLF 3
BR 44
CLF 2
Ввод данных из ВУ-1, пересылка их в ячейку 25,
сброс флага ВУ-1, переход к восстановлению
содержания основных регистров и выходу из
подпрограммы
Пересылка в аккумулятор содержимого буфер- Шаг
ной ячейки 4C, вывод на ВУ-3 восьми младших 5
разрядов аккумулятора, сброс флага ВУ-3,
переход к восстановлению регистров и выходу
Очистка флага ВУ-2
44
45
46
47
48
49
F200
404D
E700
F200
F400
104C
CLA
ADD 4D
ROR
CLA
CMA
AND 4C
Восстановление содержимого регистра переноса
и аккумулятора Шаг
6
4A
4B
FA00
C800
E1
BR (0)
Возобновление состояния разрешения прерыва- Шаг
ния и выход из подпрограммы 7
4C
4D
0000
0000
Ячейки для сохранения содержимого аккумулятора и
регистра переноса
Страницы
- « первая
- ‹ предыдущая
- …
- 91
- 92
- 93
- 94
- 95
- …
- следующая ›
- последняя »
