 
        
        2_Устройство и работа компьютера
.pdf 
Процесс обработки прерывания
| 
 | 
 | Регистры | 
| ОЗУ | 
 | AX | 
| 
 | Процессор | |
| 
 | 
 | |
| Пр.обр.пр. | 
 | BX | 
| Прогр. | 
 | CX | 
| 
 | 
 | |
| 
 | Счетчик | 
 | 
| 
 | команд | 
 | 
Стек
Виды прерываний
–программные – вызываются из программы
•int 10h
•interrupt
–аппаратные (системные) – вызываются устройствами, которые хотят обратить на себя внимание процессора
•IRQ0...IRQ15
•interrupt request
–Команды для вызова прерывания есть в любом языке программирования
| (c) 2008 Арьков В.Ю. | 21 | 
 
Аппаратные прерывания
•Когда УВВ нужно участие процессора (пришли данные с мышки, принтер закончил работу ...) устройство обращается к прерыванию, выставляя флаг на линии требования прерывания в системной шине IRQ.
•Процессор останавливает выполнение текущей программы и выполняет программу обработки прерывания (принимает данные от устройства), затем возобновляет работу программы с того места, где произошло прерывание. На время обработки прерывания текущее содержимое регистров и слово состояния процессора записываются в стек.
•Регистры процессора (R1, R2, R3, … или АX, ВX, CX, …) и счетчик команд (СК), который содержит адрес выполняемый команды. Адрес – это номер регистра (ячейки) оперативной памяти. Регистры процессора – это ячейки для временного хранения данных.
| Вложенные прерывания | ||
| Прогр. 1 | Прогр. 2 | |
| Сохр. | Прогр. 3 | |
| в стек | Сохр. | |
| в стек | ||
| 
 | ||
| Прерыв. | 
 | |
| Восстан. | Восстан. | |
| из стека | из стека | |
| (c) 2008 Арьков В.Ю. | 22 | |
