русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Вложенные прерывания


Дата добавления: 2015-08-06; просмотров: 4360; Нарушение авторских прав


Важнейшими характеристиками системы прерываний является глубина прерываний и приоритет. В ЭВМ существует одноуровневая и многоуровневая система прерываний. В одноуровневых системах нет реакции при обработке прерываний на сигналы других поступающих прерываний. Удовлетворение запросов на прерывание в таких системах осуществляется только после завершения обработки ранее возникшего прерывания. В современных ПК используются многоуровневые системы, допускающие прерывания различной глубины. Глубина прерываний — это максимальное число программ ISR, которые могут прерывать друг друга. При этом, если глубина прерываний п, то может быть прервано п подпрограмм. Глубина возможных прерываний зависит от класса решаемых задач и определяется организацией очередности обработки прерываний. Одновременно поступившие запросы на прерывания на регистр прерываний МП, обрабатываются по принципу приоритетности. В первую очередь обслуживаются прерывания с наивысшим приоритетом. При поступлении запросов на прерывание соответствующий триггер в регистре прерываний устанавливается в 1. Перед завершением выполнения очередной команды МП опрашивает регистр прерываний. Очередность реализации запросов на прерывание устанавливается в порядке приоритета, заранее присвоенного каждому типу прерывания. Присвоение приоритета представляет собой сложную задачу, при решении которой необходимо учитывать важность и срочность обслуживания тех или иных прерываний. Обычно наивысшим приоритетом обладают прерывания от схем управления энергопотреблением и по машинной ошибке.

 

Прерывание подпрограмм ISR называется вложением прерываний. Для организации вложенных прерываний в каждой подпрограмме обслуживания прерываний необходимо выполнить:

1. разрешить прерывание по команде EI

2. временно запомнить приоритет прерванной программы



3. загрузить в схему приоритетных прерываний новый текущий приоритет

4. обслужить это прерывание

5. восстановить прежний приоритет

6. восстановить прерванную программу (командой IRET)

 

 

Аппаратные прерывания:

- внутренние (от процессора и сопроцессора)

- внешние:

- маскируемые

- немаскируемые

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

К внутренним прерываниям можно отнести и программно-вызываемые пре­рывания. Внутренние прерывания МП генерируются при возникновении особых условий при выполнении текущей команды (пример: деление на нуль переполнение разрядной сетки и т.п.).

Програмно-вызываемые прерывания выполняются под действием команды INT, и в этом случае действия МП аналогичны вызову программы ISR, т.е. сохранение в стеке адреса возврата, передача управления по указанному ад­ресу, но имеются и некоторые отличия:

A) выполняется прерывание, помещенное в стек и в регистре флагов сбрасы­вается в 0 бит IF (разрешения обработки прерываний).

Б) вместо адреса вызываемой подпрограммы аргументом вызова является номер вектора прерываний.

B) по окончании выполнения процедуры програмно-вызываемого прерыва­ния процессор извлекает из стека кроме адреса возврата и сохраненное зна­чение регистра флагов. Программо-вызываемые прерывания позволяют лег­ко и быстро вызывать процедуры из любого сегмента памяти, не применяядальних вызовов. Например, программное прерывание INT3 традиционно используется в целях отладки программ для создания точки останова и оно вызывается однобайтной инструкцией.



<== предыдущая лекция | следующая лекция ==>
Общая последовательность реакций МП на сигналы прерываний | Внешние прерывания


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.022 сек.