Билет 26
Система прерываний микропроцессора. Таблица векторов прерывания.
Во время работы ЭВМ может возникнуть ситуация, требующая немедленной реакции на это событие со стороны вычислительного устройства. Такой процесс называется прерыванием программы. Прерывание – это процесс, временно приостанавливающий выполнение текущей программы для выполнения некоторой задачи, с последующим возвратом к приостановленной программы. Микропроцессор 8086 имеет простую, но достаточно универсальную систему прерываний. Каждому прерыванию поставлен в соответствие код типа. Допускается обработка до 256 типов прерываний. Прерывания могут инициироваться внешними устройствами и командами программных прерываний. В некоторых случаях прерывания генерирует сам микропроцессор.
Чтобы не нарушить нормальный ход работы, ЭВМ должна:
– прервать текущее выполнение программы;
– перейти на программу обработки возникших событий;
– обработать возникшее событие;
– вернуться к выполнению прерванной программы.
Так как момент возникновения события, требующего прерывания работающей программы, заранее неизвестен, вычислительные средства должны иметь механизм, позволяющий реагировать в подобных ситуациях. Таким механизмом может быть специальный сигнал – запрос разрешения прерывания.
Каждый запрос на прерывание требует соответствующей реакции системы и следовательно своей программы обработки прерываний. Разработан набор программ, позволяющих обрабатывать соответствующие прерывания. Для вызова таких программ обработки прерываний в современных системах используется таблица векторов прерываний, содержащая адреса программ обработки различных событий. Каждый источник запроса прерывания имеет свой номер входа в таблицу векторов прерываний, позволяющий вызвать соответствующую программу. Для вызова программы необходимо знать адрес сегмента памяти, в котором расположена программа, и адрес смещения, определяющий местонахождения программы. Так как адрес сегмента и смещения являются 16-разрядными, для определения полного адреса соответствующей программы необходимо 4 байта.
Таблица указателей векторов прерывания находится в самом начале оперативной памяти вычислительной системы и занимает 1 Кбайт. Такая система может обрабатывать 256 прерываний. Младшие два байта каждой четвертки определяют адрес сегмента, старшие – смещение.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.