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

Система прерываний ППЭВМ предусматривает три типа прерываний:

  • внутренние прерывания, происходящие при возникновении определенных состояний процессора;

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

  • программные прерывания, являющиеся результатом выполнения специальных команд процессора (INT).

Во всех случаях обработчик прерывания вызывается по значению указателя, расположенному в младших адресах памяти; абсолютный адрес вектора получается умножением на 4 номера прерывания (номера вектора). Внутренние прерывания могут вызываться через векторы 0 - 7, для внешних прерываний выделены векторы 8 - 15 (установкой режима контроллера прерываний), программые прерывания могут происходить через векторы 0 - 255. Таким образом, первый килобайт ОЗУ выделяется для хранения адресов модулей обработки прерываний. Прерывания всех типов выполняются совершенно аналогично, что позволяет, в частности, программно моделировать аппаратные прерывания, используя отведенные для аппаратуры векторы.

BIOS устанавливает обработчики прерываний 0 - 31. На некоторых моделях компьютеров BIOS может инициировать и другие обработчики прерываний (с номерами 64, 65, 74, 112, возможно, и другие), в зависимости от установленного оборудования, однако векторы 32 - 63 резервируются АДОС, и их значения будут установлены при загрузке АДОС независимо от присоединенного оборудования.

В табл. 1 перечислены обработчики прерываний, устанавливаемые BIOS всех или многих моделей ЭВМ. Не следует считать, что в таблице перечислены все обработчики прерываний BIOS. При присоединении дополнительного оборудования могут определяться и новые векторы прерываний. При отсутствии некоторого оборудования могут отсутствовать и соответствующие обработчики прерываний.

Только векторы 0 - 31 устанавливаются BIOS во всех случаях. Следует также отметить, что некоторые обработчики прерываний BIOS не выполняют никаких действий, кроме возврата из прерывания (IRET), и становятся способными выполнять свое назначение только после загрузки АДОС или даже некоторых транзитных команд (системных программ) АДОС. При загрузке АДОС могут переопределяться и другие векторы. Не следует считать, что какой-либо вектор всегда установлен на адрес BIOS.

№ Прерывания (вектора)

Адрес

Назначение

0(0)

0000H

деление на ноль

1(1)

0004H

пошаговое выполнение инструкций процессора

2(2)

0008H

немаскируемое прерывание: в некоторых моделях прерывание от схем контроля или от арифметического сопроцессора

3(3)

000CH

точка прекращения

4(4)

0010H

переполнение

5(5)

0014H

печать экрана

6(6)

0018H

резервируется

7(7)

001CH

резервируется

8(8)

0020H

прерывание от системного таймера

9(9)

0024H

прерывание от клавиатуры

10(0AH)

0028H

прерывания от подчиненного ПКП (IBM AT) резервируется для других моделей

11(0BH)

002CH

в некоторых моделях прерывание от второго адаптера асинхронной связи

12(0CH)

| 0030H

прерывание от (первого) адаптера асинхронной связи

13(0DH)

0034H

во многих моделях прерывание от жесткого диска; прерывание от второго адаптера синхронной связи IBM AT

14(0EH)

0038H

прерывание от контроллера дискеты

15(0FH)

003CH

в некоторых моделях прерывание от устройства параллельной печати; в IBM AT прерывание от (первого) адаптера синхронной связи

16(10H)

0040H

функции дисплея

17(11H)

0044H

определение набора подключенного оборудования

18(12H)

0048H

определение объема ОЗУ

19(13H)

004CH

функции дисковых устройств

20(14H)

0050H

функции устройств асинхронной связи

21(15H)

0054H

функции кассетной ленты и функции дополнительного оборудования (зависят от модели компьютера)

22(16H)

0058H

функции клавиатуры

23(17H)

005CH

функции печати

24(18H)

0060H

загрузка системы с альтернативного устройства или загрузка Бейсика ПЗУ

25(19H)

0064H

загрузка операционной системы с диска

26(1AH)

0068H

функции системного таймера; в некоторых моделях - функции часов

27(1BH)

006CH

прерывание, вызываемое пользователем с клавиатуры (ввод BREAK)

28(1CH)

0070H

резерв для прикладного обработчика прерываний от системного таймера

29(1DH)

0074H

указатель на таблицу параметров экрана

30(1EH)

0078H

указатель на таблицу параметров дискетного устройства

31(1FH)

007CH

указатель на таблицу изображений знаков на экране

32-63(20H-3FH)

-

зарезервированы для ДОС

64(40H)

0100H

функции дискетных устройств (в моделях с жесткими дисками)

65(41H)

0104H

указатель таблицы параметров жестких дисков

70(46H)

0118H

в некоторых моделях (AT) указатель на таблицу параметров второго жесткого диска

74(4AH)

0128H

в некоторых моделях прерывание от сигнала тревоги

96-103(60H-67H)

-

резервируются для пользователей

112(70H)

01C0H

в некоторых моделях прерывание от часов реального времени

117(75H)

01D4H

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

128-240(80H-F0H)

-

используются или зарезервированы для Бейсика

241-255(F1H-FFH)

-

резервируются для пользователей

Таблица 1. Прерывания базовой системы ввода-вывода

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]