Да нету нигде нормальной и полной документации на ВМ1 в открытом доступе. Я имел ввиду книжку 2 из серии МикроЭВМ под редакцией Преснухина, там программные исключения имеют более высокий приоритет в табличке, ну и мелкие опечатки есть. В моем собственноручном конспекте 1988 года по PDP-11 тоже записано что инструкции исключений имеют приоритет. Вот я почему-то и полагал что если такая инструкция загружена в регистр команд, то это может повлиять на обработку возникших внешних прерываний. Однако это не так, да и реализация такого получилась бы сложной. Хотя было бы прикольно, при возврате из прерывания не дергать стек, с восстановлением/пересохранением регистров, а сразу переходить на обработчик нового исключения, если таковое есть. Cortex-ы так умеют, например.
Да, именно так и происходит. Загружается код инструкции IOT/EMT/TRAP в регистр команд, в первой декодирующей микроинструкции происходит опрос блока прерыаваний, и если есть готовое асинхронное событие, то загруженная инструкция выбрасывается и начинается обработка события.





Ответить с цитированием
