Многие ошибки, связанные с прерываниями, зависят как от аппаратного, так и программного обеспечения. Самыми распространенными ошибками являются следующие.
u Отсутствие разрешения прерываний.
u Отсутствие сохранения регистров.
u Сохранение или восстановление регистров в неправильном порядке.
u Разрешение прерываний до инициализации приоритетов и других параметров системы прерываний.
u Неучет того, что реакция на прерывание включает сохранение счетчика команд в вершине стека.
u Отсутствие запрещения прерываний во время многобайтных передач или выполнения последовательности команд, которая не должна прерываться.
u Отсутствие разрешения прерываний после последовательности команд, которая должна выполняться без прерываний.
u Отсутствие очистки сигнала, вызывающего прерывание.
u Ошибка в общении с основной программой.
u Отсутствие сохранения и восстановления приоритетов.
u Отсутствие разрешения прерываний от дополнительных аппаратурных входов, которое выполняется с помощью очистки разрядов масок в регистре I.
u Неправильное использование разрядов разрешения прерываний в командах SIM.
Лекция 19.
Введение в макроассемблер