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

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


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

Векторний перехід на процедуру обробки переривання

У системному адресний простір з молодшим адресами розташовується таблиця векторів переходу на процедури обробки переривань . Вона складається з n елементів об'ємом по 2 ... 4 байтів, в які розробники системного ПЗ повинні записати адреси розташування в пам'яті процедур обробки переривань, що відповідають номерам елементів таблиці, тобто номерами конкретних запитів на переривання. Номер запиту (або переривання) жорстко пов'язаний з номером елемента таблиці векторів.

rn

Адреса AdrN , за яким знаходиться в пам'яті конкретний елемент таблиці, визначається співвідношенням AdrN = k ' N , де k - розмір елемента таблиці в байтах, який залежить від типу процесора , N - умовний номер переривання.

rn

Процесор, одержавши від контролера переривань номер активного переривання, автоматично зберігає в стек поточне вміст лічильника команд PC (адреса повернення в переривається програму), звертається до пам'яті за адресою < strong> AdrN , зчитує з елемента таблиці його вміст і поміщає його в регістр PC. Таким чином, наступною буде виконана перша команда процедури обробки (ріс.6.3-а).