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

 
 
 
«Maybe 'just one little global variable' isn't too unmanageable, but that style leads to code that is useless except to its original programmer»
Bjarne Stroustrup
Русский | Українська


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

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

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

rn

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

rn

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