Page 287 - 4503
P. 287
вказана адреса, ім’я котрої вектор переривань. Само по собі
зрозуміло, якщо код цієї процедури записаний де інде, то
першою буде команда goto, про що ми довідаємося
незабаром у програмі 9.1. На рисунку 9.2 цей перехід
зображений криволінійною пунктирною лінією зі стрілкою.
5. Як і всі підпрограми в цілому, процедура обробки
переривань теж повинна завершитися власною командою
повернення у фонову програму. Однак при перериванні
необхідно не тільки виволікти зі стеку збережену адресу
повернення, але й встановити біт GIE, щоб дати дозвіл усім
наступним перериванням. Ці обидві дії забезпечує команда
retfie. Таким чином, після повернення в основну програму
можна буде зреагувати на всі поставлені у чергу запити на
переривання, або просто бути готовим до їх почергового
надходження.
Рисунок 9.2 — Відгук на запит переривання
Однак відмінность процедури обробки переривань від
підпрограми полягає не тільки у відсутності команди call і
287