Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вопросы и ответы Микропроцессорная техника.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
892.93 Кб
Скачать

Программные прерывания

Программные прерывания не привязаны к конкретным аппаратным ресурсам и обычно рассматриваются как вызовы подпрограмм.

Пользовательские прерывания – это обычные процедуры, которые вызывает текущая программа для выполнения предусмотренных в ней стандартных подпрограмм. При многопрограммной работе микропроцессора пользовательские прерывания устанавливаются для указания приоритета выполнения прикладных программ.

Одно из главных назначений BIOS-прерываний – обеспечение доступа к аппаратуре микроЭВМ со стороны операционной системы и программ пользователя. BIOS является компонентом микроЭВМ и выполняет следующие функции:

  • инициализация микроЭВМ, т.е. приведение в исходное состояние всех элементов микроЭВМ при включении питания,

  • тестирование, т.е. проверка комплектности и работоспособности аппаратных и программных ресурсов микроЭВМ,

  • инициализация операционной системы, обработка программных и аппаратных прерываний, выполняющих служебные процедуры и операции с внешними устройствами,

  • управление устройствами ввода-вывода микроЭВМ.

DOS-прерывания обеспечивают доступ программ пользователя к системным ресурсам. Прерывания DOS часто называют прерываниями верхнего уровня, так как в этих прерываниях меньше учитываются технические особенности элементов микроЭВМ.

Исключительные ситуации

Исключительные ситуации, генерируемые микропроцессором, возникают в процессе и по результатам выполнения команд. Исключительные ситуации условно разделены на три типа в зависимости от того, чем они были вызваны и поддерживается ли рестарт вызвавшей их команды.

Ошибки представляют собой исключительные ситуации, которые обнаруживаются и обслуживаются после выборки до выполнения ошибочной команды. Чаще всего при возникновении ошибки возможен рестарт данной команды. Пример ошибки: обращение по адресу, находящемуся в отсутствующей в оперативной памяти странице.

Ловушки представляют собой исключительные ситуации, о которых сообщается сразу после выполнения команды, послужившей причиной возникновения данной исключительной ситуации.

Аварийные завершения - исключительные ситуации, которые возникают при невозможности точно обнаружить источник ошибки и используются при обнаружении крупных ошибок и технических неисправностей. Технические прерывания (или прерывания от схем контроля) возникают при появлении отказов и сбоев в работе технических средств микроЭВМ. Большинство технических прерываний не маскируется, т.е. они разрешаются всегда. При их возникновении даже не запрашивается причина прерывания, а, по-возможности, спасаются важные промежуточные результаты – записываются в безопасное место, на винчестер, например.

При появлении запроса на прерывание микропроцессор, после завершения выполнения текущей команды программы, анализирует допустимость (разрешенность и приоритетность) данного вида прерывания. Если прерывание разрешено, микропроцессор выполняет следующие действия: 1) запоминание в стековой памяти текущего состояния регистров микропроцессора, 2) выполнение подпрограммы обработки прерывания, 3) восстановление состояния регистров микропроцессора и возврат к выполнению прерванной программы.