Микропроцессоры и микроконтроллеры

 
 
 
«Отладка кода вдвое сложнее, чем его написание. Так что если вы пишете код настолько умно, насколько можете, то вы по определению недостаточно сообразительны, чтобы его отлаживать.»
Brian W. Kernighan.
Русский | Українська


Микропроцессоры и микроконтроллеры :: Принципы работы микропроцессоров :: Особенности обработки внутренних и программных прерываний

Особенности обработки внутренних и программных прерываний

Набор и назначение внутренних прерываний строго регламентированы для конкретной модели процессора. Каждое внутренне прерывание связано с определенным событием в процессоре и с определенным номером в списке обрабатываемых прерываний. Например, в процессорах серии Intel 80x86 при делении на нуль возникает внутреннее прерывание с номером 0. При обработке внутренних запросов внешний контроллер прерываний не используется, т.к. процессор уже имеет информацию о номере прерывания. Переход на нужную процедуру обработки выполняется в соответствии с принципом, реализованном в конкретном процессоре.

Если нужно вызвать программное прерывание из текущей программы, программист в соответствующем месте программы должен разместить специальную команду. Для процессоров серии Intel 80x86 такой командой является INTn, где n – номер нужного прерывания. При выполнении такой команды процессор получает информацию о номере прерывания непосредственно из кода команды и выполняет переход на нужную процедуру так же, как и в случае обработки других видов прерываний. При обработке программных прерываний внешний контроллер не используется.