Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

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




BIOS Interrupt

DOS Interrupt

Лекция 7

 

Этот вариант программных прерываний связан с теми векторами прерываний, для которых операционная среда DOS загружает программы обработки прерываний в ОЗУ IBM PC при своем старте: INT 20h – INT 2Fh.

Так, вектор прерываний INT 20h завершает работу программы в среде DOS и возвращает управление последней, вектор прерываний INT 24h осуществляет обработку критических ошибок DOS, вектора INT 25h/INT 26h осуществляют чтение/запись жесткого диска.

Особое место занимает вектор прерываний INT 21h, который образует семейство т.н. «функций DOS» (с номерами 00h-6Ch), предоставляющих программисту возможность работы практически со всеми программными и аппаратными компонентами среды DOS и IBM PC. Например:

функции 2Ah/2Bh – получить/установить системную дату;

функции 2Ch/2Dh – получить/установить системное время;

функции 3Dh/3Eh – открыть/закрыть файл;

функции 25h/35h – получить/установить вектор прерываний (т.е. соответствующий адрес) и т.д.

Пример фрагмента программы на ассемблере для получения вектора прерываний через регистры Intel процессора (AH, AL, DX, DS) имеет вид:

MOV AH, 25h; номер функции

MOV AL, xxh; номер вектора прерываний

INT 21h; прерывание - после выполнения этой команды в регистрах DS:DX находится адрес (сегмент:смещение) вектора xxh.

 

Этот вариант программных прерываний связан с теми векторами прерываний, для которых программы обработки прерываний входят в состав BIOS IBM PC, т.е. находятся в ПЗУ. Назначение этих прерываний состоит в обеспечении начального старта IBM PC до момента загрузки операционной системы. По своим функциональным возможностям эти прерывания аналогичны DOS прерываниям. Так, семейство функций вектора прерываний INT 10h обслуживает видеоадаптер, INT 14h-последовательные порты IBM PC, INT 16h-клавиатуру, INT 17h-принтер, INT 1Ah-системный таймер и т.д.

Пример фрагмента программы на ассемблере для посылки одного символа в последовательный порт путем использования программного прерывания имеет вид:

MOV AH, 1; номер функции

MOV DX, 0; порт COM1 (0-COM1, 1-COM2)

MOV AL,’Z’; выбор символа

INT 14h; прерывание – посылка символа в порт

SHL AH, 1; пересылка 7р регистра AH в бит переноса CF

JZ ERROR; переход к метке ERROR в случае неудачи (7р AH=1).

Этот тип прерываний инициируется каким-либо устройством (внешним или внутренним по отношению к процессору) и обрабатывается контроллером прерываний, который может представлять собой отдельную микросхему (например, для Intel 80x86) или входить в состав микроконтроллера (например, для Siemens SAB C167). Таблица аппаратных прерываний IBM PC представлена в таблице 3.

Таблица 3

  Вектор     Сигнал прерывания IRQ   Устройство   Контроллер   Приоритет
08h   Интервальный таймер Первый Высший
09h   Клавиатура   Первый  
0Ah   Второй контроллер прерываний   Первый  
70h   Часы реального времени Второй  
71h   Видеоконтроллер   Второй  
72h   Резерв   Второй  
73h   Резерв   Второй  
74h   Резерв   Второй  
75h   Математический сопроцессор Второй  
76h   Жесткий диск   Второй  
77h   Резерв Второй  
0Bh   Последовательный порт COM2 Первый  
0Ch   Последовательный порт COM1 Первый  
0Dh   Жесткий диск   Первый  
0Eh   Floppy   Первый  
0Fh   Принтер   Первый Низший

 




Поделиться с друзьями:


Дата добавления: 2014-12-16; Просмотров: 699; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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