Cтраница 3
![]() |
Назначение линий интерфейса ввода-вывода. [31] |
Адресное слово канала ( АС К) определяет ключ защиты, с которым программа канала обращается п память, и адрес первой команды в программе канала. [32]
Заносит адресное слово канала ( CAW) в ячейку 72, устанавливая ключ защиты ( если он используется) и адрес первой команды канала в программе канала. [33]
Блок-схема решения задачи представлена на рис. 16.11. Будем называть эту подпрограмму ALARM, используя это символическое имя в качестве метки адреса первой команды. [34]
Она состоит из 3 байт: 1 байт - для кода операции ( CALL) и 2 байта для указания адреса первой команды подпрограммы. [35]
Блок-схема решения этой задачи показана на рис. 16.2. Назовем эту программу TESTSW ( тест ключа) и используем это символическое имя в качестве метки, указывающей на адрес первой команды программы. [36]
В некоторых же случаях программное запоминание в принципе невозможно - например содержимое счетчика команд будет заведомо изменено уже к началу работы диспетчера, поскольку к этому моменту в счетчике команд должен уже находиться адрес первой команды диспетчера. [37]
![]() |
Общая структура команды. [38] |
Первой выполняется команда, заданная пусковым адресом программы. Обычно это адрес первой команды программы. Адрес следующей команды однозначно определяется в процессе выполнения текущей команды и может быть либо адресом следующей по порядку команды, либо адресом любой другой команды. Процесс вычислений продолжается до тех пор, пока не будет выполнена команда, предписывающая прекращение вычислений. [39]
Это означает, что должен быть выполнен переход к подпрограмме D. Первый байт адреса первой команды подпрограммы D хранится в ячейке памяти с этим адресом. Увеличение кода 02061в на 1 дает адрес ячейки памяти, в которой хранится второй байт адреса. [40]
Команда НАЧАТЬ ВВОД-ВЫВОД указывает УВУ и ВУ и заставляет канал выбрать адресное слово канала из фиксированной ячейки основной памяти. Адресное слово канала содержит адрес первой команды канала, определяющей характер операции, которую должен выполнить канал с требуемым ВУ. [41]
После нажатия кнопки Пуск на пульте ручного управления машина начинает работать автоматически. Устройство управления передает в ВЗУ адрес первой команды. Записанная по этому адресу команда поступает в устройство управления, которое код операции передает в арифметическое устройство, а адреса чисел последовательно передает в ВЗУ. Найденные по этим адресам числа поступают в ОЗУ и оттуда в арифметическое устройство. [42]
При выполнении прерывания в верхний уровень стека записывается увеличенное на единицу значение счетчика команд ( ранее записанные адреса возвратов опускаются на более нижние уровни), а первый разряд регистра EN устанавливается в О, блокируя последующие прерывания. При этом в счетчик команд автоматически заносится адрес первой команды подпрограммы обработки прерываний. Для разрешения последующих прерываний необходимо непосредственно перед командой возврата из подпрограммы обработки прерывания выполнить команду загрузки регистра режима. [43]
Регистр команд состоит из четырех групп: регистра кода операций РКО, регистра первого адреса Р1А, регистра второго адреса Р2А и регистра третьего адреса РЗА. В С / С оператор с пульта вводит адрес первой команды. После этого начинается автоматическое выполнение программы. Импульс управления ИУ-1 открывает вентиль В, через который адрес первой команды передается в запоминающее устройство. Одновременно в ЗУ подается сигнал считывание. В результате первая команда выбирается из той ячейки запонимающего устройства, где она хранилась. [44]
Для этого в счетчик команд заносится фиксированный адрес, адрес первой команды диспетчера. [45]