Cтраница 2
В записи оператора ON дополнение SNAP может быть опущено, однако если оно указано, печатается определенная информация о состоянии программы, позволяющая оценить ситуацию прерывания и полезная при отладке. [16]
Ряд идентификаторов в виде последовательностей букв, являющихся словами английского происхождения, используется для обозначения объектов языка, называемых операторам описателями, дополнениями, ситуациями прерывания, встроенными функциями. Это служебные или ключевые слова, которые, однако, могут быть употреблены в любом другом смысле, например в качестве имен переменных. В таком случае истинный смысл данного идентификатора определяется транслятором контекстуально. LT, GT и др., а также ключевые слова могут быть использованы только в этом специальном смысле. [17]
Ряд идентификаторов в виде буквенных последовательностей, являющихся словами английского происхождения, используется для обозначения объектов языка, называемых операторами, описателями, дополнениями, ситуациями прерывания, встроенными функциями. [18]
Ряд идентификаторов в виде последовательностей букв, являющихся словами английского происхождения, используется для обозначения объектов языка, называемых операторами, описателями, дополнениями, ситуациями прерывания, встроенными функциями. Это служебные или ключевые слова, которые, однако, могут быть употреблены в любом другом смысле, например в качестве имен переменных. В таком случае истинный смысл данного иден-тификатора определяется транслятором контекстуально. LT, GT и др., а также ключевые слова могут быть использованы только в этом специальном смысле. [19]
Действие оператора конца, заключающего блок, являющегося программой реакции на прерывание, состоит в передаче управления оператору, следующему за оператором, в котором возникла ситуация прерывания. [20]
Замещенный транзакт ждет освобождения устройства. Ситуация прерывания работы устройства часто встречается в системах массового обслуживания с ненадежными каналами и заданным временем наработки на отказ. [21]
Реакция на данную ситуацию прерывания, заданная оператором ON, сохраняет силу в пределах того блока, в который входит этот оператор ON. Режим обработки ситуации прерывания распространяется также на все внутренние блоки и все вызванные из данного блока процедурные блоки. [22]
В дополнение к упоминавшимся выше средствам отладки аналогичные средства часто включают в языки программирования в качестве их расширений. В PL / I имеется мощная ситуация прерывания CHECK, которая приводит к прерыванию или выдаче сообщения каждый раз, когда изменяется значение указанной переменной или выполняется оператор с указанной меткой. [23]
Выполнение оператора UN заключается в том, что для соответствующей ситуации - прерывания устанавливается указанный режим обработки. Выполнение следующего оператора ON для такой же ситуации прерывания задает для нее другой режим обрабетки. При этом, если новый оператор ON выполняется в блоке, вызванном данным блоком, режим обработки, заданный предшествующим оператором GN, временно отменяется и восстанавливается лишь при завершении работы блока, содержащего новый оператор ON, или же в результате выполнения оператора REVERT ( см. примеры в пп. [24]
Выполнение оператора ON заключается в том, что для соответствующей ситуации прерывания устанавливается указанный режим обработки. Выполнение следующего оператора ON для такой же ситуации прерывания задает для нее другой режим обработки. При этом, если новый оператор ON выполняется в блоке, вызванном данным блоком, режим обработки, заданный предшествующим оператором ON, временно отменяется и восстанавливается лишь при завершении работы блока, содержащего новый оператор ON, или же в результате выполнения оператора REVERT ( см. примеры в пп. [25]
В случае блоков PROCEDURE и BEGIN ситуация прерывания оказывает действие на все операторы вплоть до оператора END, включая все вложенные блоки. На вызываемые процедуры, лежащие вне блока, влияние ситуации прерывания, указанной перед данным блоком, не распространяется. [26]
Он может установить точки вклинивания в конкретных операторах PL / 1, изменить значение переменной Л, печатая Л 2, и получить след пооператорной прокрутки программы. Программист может получить выборочные наглядные дампы по таким запросам, как все активизированные процедуры, все файлы, все переменные-указатели, и состояние всех ветвей и ситуаций прерывания. Язык АПЛ благодаря присущим ему общности и единообразию представляет собой идеальную отладочную среду, в которой язык программирования и язык отладки совпадают. Инструменты отладки такого типа полезны при тестировании, но они обычно не применимы при отладке системы, эксплуатируемой в рабочем режиме, так как требуют специальных возможностей компилятора. При разработке больших, сложных программных систем стоит рассмотреть вопрос о включении средств отладки прямо в создаваемую систему. DSS позволяет обслуживающему персоналу взаимодействовать с системой в рабочем режиме. [27]
![]() |
Программирование выбора правого / левого слова приемника. [28] |
Для того, чтобы очистить RDLF и RRDF во время обслуживания прерываний по правому или левому каналу, должно быть прочитано содержимое регистра данных приема того приемника, работа которого разрешена. Если возникает ситуация прерывания приема с исключительной ситуацией ( RDLF RRDF 1), то оба бита RDLF и RRDF очищаются с помощью чтения содержимого регистра RCS, которое следует за чтением содержимого регистра данных приема тех приемников, работа которых разрешена. [29]
Для того, чтобы очистить TDLE и TRDE во время обслуживания прерываний по правому или левому каналу, должно быть прочитано содержимое регистра данных передачи того приемника, работа которого разрешена. Если возникает ситуация прерывания приема с исключительной ситуацией ( TDLE TRDE 1), то оба бита TDLE и TRDE очищаются с помощью чтения содержимого регистра TCS, которое следует за чтением содержимого регистра данных приема тех приемников, работа которых разрешена. [30]