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

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


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

Особенности построения процедур обработки прерываний

Процедуры обработки прерывания имеют некоторую специфику по сравнению с обычными процедурами. Поскольку обработка прерывания выполняется в случайные моменты времени по отношению к основной программе, в начале процедуры обработки прерывания следует сохранить в стеке содержимое тех регистров процессора, которые используются в данной процедуре. Эти действия можно выполнить при помощи нескольких команд PUSH <регистр>. В конце процедуры должно быть восстановлено содержимое регистров путем использования команд POP <регистр>.

Как правило, аппаратные схемы процессора блокируют вложенную обработку одного и того же прерывания. Для снятия блокировки обработанного прерывания рекомендуется завершать процедуры обработки специальной командой возврата (RETIили IRET в разных моделях МП). Вопросы, связанные с проектированием системы обработки прерываний и некоторыми особенностями обработки прерываний в специализированных вычислителях, будут подробнее рассмотрены далее.