logo search
ответы_ОМПТ_Тайлан

5. Что происходит в микропроцессорной системе при появлении запроса на прерывание программы? вектор прерывания, разрешение прерываний, приоритет прерываний.

При поступлении запроса на прерывание устанавливаются соответствующие флаги. Если эти прерывания индивидуально разрешены в регистре IE и в общем (EA), то программа выполнения перейдет по нужному вектору прерывания. Каждому прерыванию можно присвоить высший приоритет, устанавливая определенные биты.

Если прерывания разрешены и сформировался соответствующий флаг, система прерываний помещает в стек содержимое счетчика команд РС и загружает в счетчик команд адрес вектора подпрограммы обслуживания. По адресу вектора обычно располагается команда безусловной передачи управления к начальному адресу подпрограммы обслуживания прерывания. Подпрограмма обслуживания должна в случае необходимости начинаться командами записи в стек (PUSH) PSW, ACC, B, DPTR и заканчиваться командами восстановления их из стека (РОР). Подпрограммы обслуживания обязательно заканчиваются командой RETI, снимающей блокировку прерываний от других источников.

При использовании прерывании нужно не забывать о том, что после системного сброса указатель стека настроен на область первого банка регистров общего назначения. Содержимое стека можно модифицировать, например, MOV SP,#99.