Таблица векторов прерываний (англ. Interrupt Descriptor Table, IDT) используется в архитектуре x86 и служит для определения корректного ответа на прерывания и исключения.
В микропроцессорах Intel 8086/80186 таблица векторов прерываний расположена в первом килобайте памяти начиная с адреса 0000:0000 и содержит 256 векторов прерываний в формате сегмент:смещение. Начиная с процессора 80286, адрес в физической памяти и размер таблицы прерываний определяется 48-битным регистром IDTR.
В IDT используются следующие типы прерываний: аппаратные прерывания, программные прерывания и прерывания, зарезервированные процессором, называемые исключениями (первые 32) на случай возникновения некоторых событий (деление на ноль, ошибка трассировки, переполнение).
В реальном режиме элементом IDT является 32-битный FAR-адрес обработчика прерывания.
В защищённом режиме элементом IDT является шлюз прерывания длиной 8 байт, содержащий сегментный (логический) адрес обработчика прерывания, права доступа и др.
В длинном режиме размер дескриптора прерывания увеличен до 16 байт.
В режиме V86 при использовании расширения VME таблица векторов располагается по виртуальному адресу 0000:0000. Без использования этого расширения (и в том случае, если переадресация прерываний запрещена) при возникновении прерывания процессор покидает режим V86 и выполняет обычный обработчик защищённого режима.
Энциклопедичный YouTube
1/3
Просмотров:1 466
1 411
45 625
✪ Лекция 6: Адресация
✪ Прерывания по int0 и int1
✪ Программирование микроконтроллеров avr Урок 5 «Atmega»
Инициализация IDT
Первый этап инициализации выполняется BIOS, перед загрузкой ОС. Второй непосредственно самой операционной системой. Операционной системе доступно изменение некоторых адресов прерываний.
См. также
Ссылки
Эта страница в последний раз была отредактирована 6 ноября 2018 в 22:28.Таблица векторов прерываний — Карта знаний
- Таблица векторов прерываний (англ. Interrupt Descriptor Table, IDT) используется в архитектуре x86 и служит для определения корректного ответа на прерывания и исключения.
В микропроцессорах Intel 8086/80186 таблица векторов прерываний расположена в первом килобайте памяти начиная с адреса 0000:0000 и содержит 256 векторов прерываний в формате сегмент:смещение.
Начиная с процессора 80286, адрес в физической памяти и размер таблицы прерываний определяется 48-битным регистром IDTR.
В IDT используются следующие типы прерываний: аппаратные прерывания, программные прерывания и прерывания, зарезервированные процессором, называемые исключениями (первые 32) на случай возникновения некоторых событий (деление на ноль, ошибка трассировки, переполнение).
В реальном режиме элементом IDT является 32-битный FAR-адрес обработчика прерывания.
В защищённом режиме элементом IDT является шлюз прерывания длиной 8 байт, содержащий сегментный (логический) адрес обработчика прерывания, права доступа и др.
В длинном режиме размер дескриптора прерывания увеличен до 16 байт.
В режиме V86 при использовании расширения VME таблица векторов располагается по виртуальному адресу 0000:0000. Без использования этого расширения (и в том случае, если переадресация прерываний запрещена) при возникновении прерывания процессор покидает режим V86 и выполняет обычный обработчик защищённого режима.
Источник: Википедия
Связанные понятия
Прерывание (англ. interrupt) — сигнал от программного или аппаратного обеспечения, сообщающий процессору о наступлении какого-либо события, требующего немедленного внимания. Прерывание извещает процессор о наступлении высокоприоритетного события, требующего прерывания текущего кода, выполняемого процессором. Процессор отвечает приостановкой своей текущей активности, сохраняя свое состояние и выполняя функцию, называемую обработчиком прерывания (или программой обработки прерывания), которая реагирует… Контроллер прерываний (англ. Programmable Interrupt Controller, PIC) — микросхема или встроенный блок процессора, отвечающий за возможность последовательной обработки запросов на прерывание от разных устройств. Стек вызовов (от англ. call stack; применительно к процессорам — просто «стек») — в теории вычислительных систем, LIFO-стек, хранящий информацию для возврата управления из подпрограмм (процедур, функций) в программу (или подпрограмму, при вложенных или рекурсивных вызовах) и/или для возврата в программу из обработчика прерывания (в том числе при переключении задач в многозадачной среде). Структурированная обработка исключений (англ. SEH — Structured Exception Handling) — механизм обработки программных и аппаратных исключений в операционной системе Microsoft Windows, позволяющий программистам контролировать обработку исключений, а также являющийся отладочным средством. Защищённый режим (режим защищённой виртуальной адресации) — режим работы x86-совместимых процессоров. Частично был реализован уже в процессоре 80286, но там существенно отличался способ работы с памятью, так как процессоры ещё были 16-битными и не была реализована страничная организация памяти. Первая 32-битная реализация защищённого режима — процессор Intel 80386. Применяется в совместимых процессорах других производителей. Данный режим используется в современных многозадачных операционных системах… В программировании то́чка остано́ва (англ. breakpoint) — это преднамеренное прерывание выполнения программы, при котором выполняется вызов отладчика (одновременно с этим программа сама может использовать точки останова для своих нужд). После перехода к отладчику программист может исследовать состояние программы (логи, состояние памяти, регистров процессора, стека и т. п.), с тем чтобы определить, правильно ли ведёт себя программа. В отличии от полной остановки, с помощью останова, после работы в… Переключение банков — способ увеличения количества используемой памяти по сравнению с количеством, которое процессор может адресовать напрямую. Этот способ может использоваться чтобы изменять конфигурацию системы: например ПЗУ, требующееся для загрузки системы с дискеты, может быть отключено, когда оно больше не нужно. В игровых приставках переключение банков позволяет разработать игры большего размера для использования на текущем поколении консолей. Регистр процессора — блок ячеек памяти, образующий сверхбыструю оперативную память (СОЗУ) внутри процессора; используется самим процессором и большей частью недоступен программисту: например, при выборке из памяти очередной команды она помещается в регистр команд, к которому программист обратиться не может. Адресация — осуществление ссылки (обращение) к устройству или элементу данных по его адресу; установление соответствия между множеством однотипных объектов и множеством их адресов; метод идентификации местоположения объекта. Стек (англ. stack — стопка; читается стэк) — абстрактный тип данных, представляющий собой список элементов, организованных по принципу LIFO (англ. last in — first out, «последним пришёл — первым вышел»). Дескриптор шлюза — служебная структура данных, служащая для различных переходов. Используется только в защищённом режиме. В реальном режиме некоторым аналогом может служить дальний адрес. Длина дескриптора стандартна и равна восьми байтам. Руткит (англ. rootkit, то есть «набор root-а») — набор программных средств (например, исполняемых файлов, скриптов, конфигурационных файлов), обеспечивающих… Орель БК-08 — бытовой компьютер производства Днепровского Машиностроительного Завода. Сте́ковый кадр (фрейм) (англ. stack frame) — механизм передачи аргументов и выделения временной памяти (в процедурах языков программирования высокого уровня) с использованием системного стека; ячейка памяти в стеке. Резидентная программа (или TSR-программа, от англ. Terminate and Stay Resident — «завершиться и остаться резидентной») — в операционной системе MS-DOS программа, вернувшая управление оболочке операционной системы (command.com), либо надстройке над операционной системой (Norton Commander и т. п.), но оставшаяся в оперативной памяти персонального компьютера. Резидентная программа активизируется каждый раз при возникновении прерывания, вектор которого эта программа изменила на адрес одной из своих процедур… Ввод-вывод (от англ. input/output, I/O) в информатике — взаимодействие между обработчиком информации (например, компьютер) и внешним миром, который может представлять как человек, так и любая другая система обработки информации. Ввод — сигнал или данные, полученные системой, а вывод — сигнал или данные, посланные ею (или из неё). Термин также может использоваться как обозначение (или дополнение к обозначению) определенного действия: «выполнять ввод-вывод» означает выполнение операций ввода или вывода… Реальный режим (или режим реальных адресов; англ. real-address mode) — режим работы процессоров архитектуры x86, при котором используется сегментная адресация памяти (адрес ячейки памяти формируется из двух чисел: сдвинутого на 4 бита адреса начала сегмента и смещения ячейки от начала сегмента; любому процессу доступна вся память компьютера). Изначально режим не имел названия, был назван «реальным» только после создания процессоров 80286, поддерживающих режим, названный «защищённым» (режим назван… Переполнение буфера (англ. Buffer Overflow) — явление, возникающее, когда компьютерная программа записывает данные за пределами выделенного в памяти буфера. Начальная загрузка — сложный и многошаговый процесс запуска компьютера. Загрузочная последовательность — это последовательность действий, которые должен выполнить компьютер для запуска операционной системы (точнее, загрузчика), независимо от типа установленной ОС. Бездействие системы (англ. system idle process) — процесс, выполняемый процессором в пространстве ядра операционной системы в случае, если нет других процессов, которые процессор мог бы выполнять. Соглашение о вызове (англ. calling convention) — описание технических особенностей вызова подпрограмм, определяющее… Дополнительная память (англ. Extended memory, XMS) — память за пределами первого мегабайта адресного пространства IBM PC-совместимого компьютера с процессором Intel 80286 или более поздним. Реги́стровое окно́ — один из методов организации работы с регистрами процессора, применяемый для снижения накладных расходов на работу со стеком при вызовах подпрограмм. Кэш или кеш (англ. cache, от фр. cacher — «прятать»; произносится — «кэш») — промежуточный буфер с быстрым доступом к нему, содержащий информацию, которая может быть запрошена с наибольшей вероятностью. Доступ к данным в кэше осуществляется быстрее, чем выборка исходных данных из более медленной памяти или удаленного источника, однако её объём существенно ограничен по сравнению с хранилищем исходных данных. Систе́мный вы́зов (англ. system call) в программировании и вычислительной технике — обращение прикладной программы к ядру операционной системы для выполнения какой-либо операции. Удалённый прямой доступ к памяти (англ. remote direct memory access, RDMA) — аппаратное решение для обеспечения прямого доступа к оперативной памяти другого компьютера. Такой доступ позволяет получить доступ к данным, хранящимся в удалённой системе без привлечения средств операционных систем обоих компьютеров. Является методом пересылки данных с высокой пропускной способностью и низкой задержкой сигнала, и особенно полезен в больших параллельных вычислительных системах — кластерах. Страничная память — способ организации виртуальной памяти, при котором единицей отображения виртуальных адресов на физические является регион постоянного размера (т. н. страница). Типичный размер страницы — 4096 байт, для некоторых архитектур — до 128 КБ. Маршрутизация (англ. Routing) — процесс определения маршрута следования данных в сетях связи. Атомарная (атом от греч. atomos — неделимое) операция — операция, которая либо выполняется целиком, либо не выполняется вовсе; операция, которая не может быть частично выполнена и частично не выполнена. Двои́чная совмести́мость, бина́рная совмести́мость (англ. binary compatibility) — вид программной совместимости, позволяющий программе работать в различных средах без изменения её исполняемых файлов. Одновременная многопоточность (англ. Simultaneous Multithreading — SMT) — одна из двух главных форм многопоточности, которая может быть реализована в процессорах аппаратно. Второй формой является временная многопоточность. Технология одновременной многопоточности позволяет исполнять инструкции из нескольких независимых потоков выполнения на множестве функциональных модулей суперскалярного микропроцессора в одном цикле. Дизассемблер длин — транслятор, преобразующий машинный код в его длину; аналог дизассемблера, но вычисляющий только размер команды процессора. Обычно применяется с машинным кодом архитектур, допускающих значительную разницу в длине инструкций, обычно из класса CISC. Например, в x86 и x86_64 (Intel и AMD) команда занимает от 1 до 15 байтов. При этом в распространенных RISC архитектурах команда занимает либо всегда 4 байта или допускается использование 2 и 4 байтных команд. После́довательный порт (англ. serial port, COM-порт, англ. communications port) — сленговое название интерфейса стандарта RS-232, которым массово оснащались персональные компьютеры. Порт называется «последовательным», так как информация через него передаётся по одному биту, последовательно бит за битом (в отличие от параллельного порта). Несмотря на то, что некоторые интерфейсы компьютера (например, Ethernet, FireWire и USB) тоже используют последовательный способ обмена информацией, название «последовательный… В информатике термин инструкция обозначает одну отдельную операцию процессора, определённую системой команд. В более широком понимании, «инструкцией» может быть любое представление элемента исполнимой программы, такой как байт-код. В информатике асинхронный ввод/вывод является формой неблокирующей обработки ввода/вывода, который позволяет процессу продолжить выполнение не дожидаясь окончания передачи данных. Команда приостановки процессора выполняется до тех пор, пока не возникнет аппаратное прерывание. Когда процессор находится в стадии исполнения этой команды, он потребляет минимальное количество энергии, и, следовательно, почти что не выделяет тепла. В процессорах, совместимых с i386, эта команда на языке ассемблера записывается как HLT, от англ. halt — остановка и имеет опкод 0xF4Не стоит путать эту команду с командой NOP. Математический сопроцессор — сопроцессор для расширения командного множества центрального процессора и обеспечивающий его функциональностью модуля операций с плавающей запятой, для процессоров, не имеющих интегрированного модуля. Функция как услуга — архитектурный шаблон, предполагающий возможность вызова экземпляра управляющего кода без необходимости управления серверами и серверным приложением; ключевой компонент бессерверных вычислений. Одной из первых широко известных реализаций является представленный в 2014 году сервис AWS Lambda, аналогичные предложения среди публичных PaaS есть у Google (Cloud Functions), IBM (на Apache OpenWhisk в составе платформы Bluemix) и Microsoft (Azure Functions) Сопроцессор — специализированный процессор, расширяющий возможности центрального процессора компьютерной системы, но оформленный как отдельный функциональный модуль. Физически сопроцессор может быть отдельной микросхемой или может быть встроен в центральный процессор (как это делается в случае математического сопроцессора в процессорах для ПК начиная с Intel 486DX). Barrel процессор, барабанный процессор, представляет собой процессор, который после каждого такта переключается между потоками команд. Эта архитектура процессора также известна как «interleaved» (чередующаяся) или «fine-grained» (мелкозернистая) временная многопоточность. В отличие от одновременной многопоточности в современных суперскалярных архитектурах, данная технология не позволяет выполнять несколько команд за один цикл. Конфигурационное пространство PCI (англ. PCI configuration space) — адресное пространство для конфигурации PCI, в дополнение к типичным адресным пространствам памяти и ввода-вывода. Пакетный Ассемблер/Дизассемблер (сокращённо ПАД или англ. PAD) представляет собой устройство связи, которое обеспечивает множественную оконечную связь с сетями X.25 (сети с коммутацией пакетов) или с узлом этой сети. Он собирает данные от группы терминалов и помещает данные в X.25 пакеты (ассемблер). ПАД также делает обратную функцию, он берёт пакеты с данными из сети с коммутацией пакетов или от узлового компьютера и возвращает их в поток символов, которые могут посылаться терминалам. Отла́дчик (деба́ггер, англ. debugger от bug) — компьютерная программа, предназначенная для поиска ошибок в других программах, ядрах операционных систем, SQL-запросах и других видах кода. Отладчик позволяет выполнять трассировку, отслеживать, устанавливать или изменять значения переменных в процессе выполнения кода, устанавливать и удалять контрольные точки или условия остановки и т.д. Виртуа́льная па́мять (англ. virtual memory) — метод управления памятью компьютера, позволяющий выполнять программы, требующие больше оперативной памяти, чем имеется в компьютере, путём автоматического перемещения частей программы между основной памятью и вторичным хранилищем (например, жёстким диском). Для выполняющейся программы данный метод полностью прозрачен и не требует дополнительных усилий со стороны программиста, однако реализация этого метода требует как аппаратной поддержки, так и поддержки… Систе́мные часы́ — специальное энергонезависимое устройство в составе компьютера для отсчёта времени, работающее даже при выключенном компьютере. Мультизагрузка (англ. Multi-boot) это техническая возможность выбора, при включении компьютера, операционной системы для запуска. Для настройки такой возможности может потребоваться специальный загрузчик операционной системы и разбиение диска на несколько разделов. Нейронный процессор (англ. Neural Processing Unit, NPU или ИИ-ускоритель англ. AI accelerator) — это специализированный класс микропроцессоров и сопроцессоров (часто являющихся специализированной интегральной схемой), используемый для аппаратного ускорения работы алгоритмов искусственных нейронных сетей, компьютерного зрения, распознавания по голосу, машинного обучения и других методов искусственного интеллекта.0 | Ошибка деления. Вызывается автоматически после выполнения команд DIV или IDIV, если в результате деления происходит переполнение (например, при делении на 0). DOS обычно при обработке этого прерывания выводит сообщение об ошибке и останавливает выполнение программы. Для процессора 8086 при этом адрес возврата указывает на следующую после команды деления команду, а в более поздних процессорах — на первый байт команды, вызвавшей прерывание. |
1 | Прерывание пошагового режима. Вырабатывается после выполнения каждой машинной команды, если в слове флагов установлен бит пошаговой трассировки TF. Используется для отладки программ. Это прерывание не вырабатывается после выполнения команды MOV в сегментные регистры или после загрузки сегментных регистров командой POP. |
2 | Аппаратное немаскируемое прерывание. Это прерывание может использоваться по-разному в разных машинах. Обычно вырабатывается при ошибке четности в оперативной памяти и при запросе прерывания от сопроцессора. |
3 | Прерывание для трассировки. Это прерывание генерируется при выполнении однобайтовой машинной команды с кодом CCh и обычно используется отладчиками для установки точки прерывания. |
4 | Переполнение. Генерируется машинной командой INT0, если установлен флаг 0F. Если флаг не установлен, то команда INT0 выполняется как NOP. Это прерывание используется для обработки ошибок при выполнении арифметических операций. |
5 | Печать копии экрана. Генерируется при нажатии на клавиатуре клавиши PrtScr. Обычно используется для печати образа экрана. Для процессора 80286 генерируется при выполнении машинной команды BOUND, если проверяемое значение вышло за пределы заданного диапазона. |
6 | Неопределенный код операции или длина команды больше 10 байт (для процессора 80286). |
7 | Особый случай отсутствия математического сопроцессора (процессор 80286). |
8 | IRQ0 — прерывание интервального таймера, возникает 18,2 раза в секунду. |
9 | IRQ1 — прерывание от клавиатуры. Генерируется при нажатии и при отжатии клавиши. Используется для чтения данных от клавиатуры. |
A | IRQ2 — используется для каскадирования аппаратных прерываний в машинах класса AT. |
B | IRQ3 — прерывание асинхронного порта COM2. |
C | IRQ4 — прерывание асинхронного порта COM1. |
D | IRQ5 — прерывание от контроллера жесткого диска для XT. |
E | IRQ6 — прерывание генерируется контроллером флоппи-диска после завершения операции. |
F | IRQ7 — прерывание принтера. Генерируется принтером, когда он готов к выполнению очередной операции. Многие адаптеры принтера не используют это прерывание. |
10 | Обслуживание видеоадаптера. |
11 | Определение конфигурации устройств в системе. |
12 | Определение размера оперативной памяти в системе. |
13 | Обслуживание дисковой системы. |
14 | Последовательный ввод/вывод. |
15 | Расширенный сервис для AT-компьютеров. |
16 | Обслуживание клавиатуры. |
17 | Обслуживание принтера. |
18 | Запуск BASIC в ПЗУ, если он есть. |
19 | Загрузка операционной системы. |
1A | Обслуживание часов. |
1B | Обработчик прерывания Ctrl-Break. |
1C | Прерывание возникает 18.2 раза в секунду, вызывается программно обработчиком прерывания таймера. |
1D | Адрес видеотаблицы для контроллера видеоадаптера 6845. |
1E | Указатель на таблицу параметров дискеты. |
1F | Указатель на графическую таблицу для символов с кодами ASCII 128-255. |
20-5F | Используется DOS или зарезервировано для DOS. |
60-67 | Прерывания, зарезервированные для пользователя. |
68-6F | Не используются. |
70 | IRQ8 — прерывание от часов реального времени. |
71 | IRQ9 — прерывание от контроллера EGA. |
72 | IRQ10 — зарезервировано. |
73 | IRQ11 — зарезервировано. |
74 | IRQ12 — зарезервировано. |
75 | IRQ13 — прерывание от математического сопроцессора. |
76 | IRQ14 — прерывание от контроллера жесткого диска. |
77 | IRQ15 — зарезервировано. |
78 — 7F | Не используются. |
80-85 | Зарезервированы для BASIC. |
86-F0 | Используются интерпретатором BASIC. |
F1-FF | Не используются. |
Таблица векторов PNG образ | Векторы и PSD-файлы
деревянный стол с видом на боке огни фон 0109
800*800
школьные программы Таблица вектор таблицы рамы
1465*1236
таблица векторов для проверки зрения
1045*2993
вектор желтый прямоугольный стол деревянный
1200*1200
таблица векторов
2000*2000
вектор плоская работа сцена кофейня кафе иллюстрация
1200*1200
Таблица вектор росписью топливный бак
2480*2480
векторная иллюстрация молодой бизнесмен с графиком планирует рабочие планы ежедневные рутины людей заполняющих графики в таблице вектор
4167*4167
зеленые лесопарки взрослые
2000*2000
интерьер дома с диваном и столом
1200*1200
Пить кофе сок таблицы Еда бургера
2000*2000
казино стол карты
1500*1501
Кухня жизнь кухонные принадлежности розовый иллюстрация завтрак стейк вектор
2268*1276
современная графика офисной жизни
5000*5000
диван подушка Маленький журнальный столик Шкаф для хранения
2000*3020
вектор росписью железный столы и стулья
1200*1200
соль и перец шакер значок
3333*3333
вектор столике шельфа
1200*692
элементы векторной иллюстрации плоский образования классная сцена
1200*1200
флаг векторный дизайн расы черный макет иллюстрации эмблемы отдельные иконки концепции простой
4000*4000
компьютер стол Видео камеры Настольная лампа
4259*2558
анализ больших данных на экране seo аналитический или электронный бизнес аудит с использованием графиков и диаграмм возврат инвестиций в концепцию roi
4000*4000
деревянный стол глядя на хэллоуин ландшафт 2209
800*800
Векторная иллюстрация доктор медицинской работы
1200*1200
стол Акварельный стол Декорации на столе Акварельный Кактус
2500*2500
свеча в стеклянной банке реалистичные иллюстрации
1200*1200
колода рамми карт вектор или цветная иллюстрация
1200*1200
гостиная обеденный стол журнальный столик стол деревянный стол
1200*1200
векторный розовый круглый стол
1201*1201
таблица размеров мебели
1200*1200
таблица размеров мебели
1200*1200
таблица размеров мебели
1200*1200
таблица размеров мебели
1200*1200
В таблице ранжирования оценки
1200*1842
Таблица размеров диаграммы цвет плоский деревянный офис
1200*1200
демо значок таблицы изображений
2000*2000
мультфильм таблица умножения
1200*1200
Таблица ppt элементов вектора календарь
2500*1630
Мультяшный рисованной таблицы дизайн иллюстрации с коммерческими элементами
2000*2000
таблица меню карты меню отеля
1200*6667
Таблица ниже поднял руку аудитории
1200*1200
таблицу компьютер квартиру значок финансового учета концепции вектор иллюстрацией доклад
1200*1200
вектор потока таблица стрелка
439*427
вектор творческого процесса таблица
843*881
Пить кофе сок таблицы Еда бургера
2000*2000
Таблица классификации информации вектор
2000*2000
стирка сравнительная таблица элементов
3543*3543
светлый танец цвет таблицы эффект прозрачный фон луч
2000*2000
Таблица бумаги
1200*1200
данные статистики показывают таблицы классификации красного
2000*2000
таблица и стандартное зрение офтальмолога векторный материал скачать бесплатно
2000*2000
сроки в таблице
3712*3712
дизайн таблицы цен
7560*5157
наука Периодическая таблица головастик бактериальный
2000*2680
молекула генной периодической таблицы
1200*1200
При исследовании векторного уровня устанавливают таблицу вставок
1200*1200
таблица информации о карте социальной сети
1200*1200
Таблица
1200*1200
таблица открытых дверей
3234*3030
Таблица
1200*1200
Таблица информации о названии цвета бриллианта
3616*2967
Таблица мультфильм росписью канцелярские курс
4138*2795
вектор потока таблица стерео
1200*1200
Таблица служебной аттестации балла
1200*1200
таблица сложения математики в начальной школе
2480*3508
Значок Таблица рекордов примечания блокнот
1500*1500
периодическая таблица химических элементов
2000*2000
Прерывание таблица векторов — Interrupt vector table
Структура данных
« Вектор прерывания таблицы» (ИВТ) представляет собой структуру данных , которая связывает список обработчиков прерываний со списком запросов на прерывание в таблице векторов прерываний. Каждый элемент таблицы векторов прерываний, называемый вектор прерывания, это адрес обработчика прерываний. Хотя концепция является общей для всех процессорных архитектур, ИВЦ может быть реализован в архитектуре конкретных мод. Например, таблица доставки является одним из способов реализации прерывания таблицы векторов.
Фон
Большинство процессоров имеют таблицу векторов прерываний, включая чипы от Intel, AMD, Infineon, Microchip Atmel, NXP и т.д.
обработчики прерываний
Обработка методов
Таблица векторов прерываний используются в трех наиболее популярных методах нахождения начального адреса подпрограммы обслуживания прерывания:
«Предопределенные»
«Предопределенный» метод загружает программный счетчик (PC) непосредственно с адресом некоторой записи внутри таблицы векторов прерываний. Таблица прыжка сам содержит исполняемый код. Хотя в принципе чрезвычайно короткий обработчик прерывания может храниться полностью внутри прерывания таблицы векторов, на практике код при каждом входе есть одна команда перехода , которая переходит к подпрограмме с полным спектром услуг прерывания (ISR) для этого прерывания. Intel 8080 , Atmel AVR и все 8051 и Microchip микроконтроллеры используют предопределенный подход.
«Fetch»
Метод «выборка» загружает компьютер косвенно, используя адрес какой-либо записи внутри прерывания таблицы векторов, чтобы вытащить адрес из этой таблицы, а затем загрузки компьютера с этим адресом. Каждый вход бесступенчатого является адресом подпрограммы обслуживания прерывания. Все микроконтроллеры Motorola / Freescale использовать метод выборки.
«Прерывание признать»
Для «прерывания» метода подтверждения, внешнее устройство дает ЦП прерывание номер обработчика. Прерывание квитирования метод используется Intel Pentium и многих старых микропроцессоров.
Когда процессор находится под воздействием прерывания , он ищет обработчик прерывания в таблице векторов прерываний, и передает ему управление.
Смотрите также
Рекомендации
внешняя ссылка
<img src=»https://en.wikipedia.org//en.wikipedia.org/wiki/Special:CentralAutoLogin/start?type=1×1″ alt=»» title=»»>Во время выполнения ЭВМ текущей программы внутри машины и в связанной с ней внешней среде (например, в технологическом процессе, управляемом ЭВМ) могут возникать события, требующие немедленной реакции на них со стороны машины.
Реакция состоит в том, что машина прерывает обработку текущей программы и переходит к выполнению некоторой другой программы, специально предназначенной для данного события. По завершении этой программы ЭВМ возвращается к выполнению прерванной программы.
Рассматриваемый процесс, называемый прерыванием программ. Принципиально важным является то, что моменты возникновения событий, требующих прерывания программ, заранее неизвестны и поэтому не могут быть учтены при программировании.
Каждое событие, требующее прерывания, сопровождается сигналом, оповещающим ЭВМ – запросами прерывания. Программу, затребованную запросом прерывания, называют прерывающей программой, противопоставляя ее прерываемой программе, выполнявшейся машиной до появления запроса.
Возможность прерывания программ – важное архитектурное свойство ЭВМ, позволяющее эффективно использовать производительность процессора при наличии нескольких протекающих параллельно во времени процессов, требующих в произвольные моменты времени управления и обслуживания со стороны процессора. В первую очередь это относится к организации параллельной во времени работы процессора и периферийных устройств машины, а также к использованию ЭВМ для управления в реальном времени технологическими процессами.
Чтобы ЭВМ могла, не требуя больших усилий от программиста, реализовывать с высоким быстродействием прерывания программ, машине необходимо придать соответствующие аппаратурные и программные средства, совокупность которых получила название системы прерывания программ.
Основными функциями системы прерывания являются:
запоминание состояния прерываемой программы и осуществление перехода к прерывающей программе
восстановление состояния прерванной программы и возврат к ней.
Вектором прерывания называется вектор «начального состояния прерывающей программы». Вектор прерывания содержит всю необходимую информацию для перехода к прерывающей программе, в том числе ее начальный адрес. Каждому запросу (номеру) прерывания соответствует свой вектор прерывания, способный инициировать выполнение соответствующей прерывающей программы. Векторы прерывания находятся в специально выделенных фиксированных ячейках памяти – таблице векторов прерываний.
Главное место в процедуре перехода к прерывающей программе занимает процедура передачи из соответствующего регистра (регистров) процессора в память (в частности, в стек) на сохранение текущего вектора состояния прерываемой программы (чтобы можно было вернуться к ее исполнению) и загрузка в регистр (регистры) процессора вектора прерывания прерывающей программы, к которой при этом переходит управление процессором.
Классификация прерываний
Запросы на прерывания могут возникать внутри самой ЭВМ и в ее внешней среде. К первым относятся, например, запросы при возникновении в ЭВМ таких событий, как появление ошибки в работе ее аппаратуры, переполнение разрядной сетки, попытка деления на 0, выход из установленной для данной программы области памяти, затребование периферийным устройством операции ввода-вывода, завершение операции ввода-вывода периферийным устройством или возникновение при этой операции особой ситуации и др. Хотя некоторые из указанных событий порождаются самой программой, моменты их появления, как правило, невозможно предусмотреть. Запросы во внешней среде могут возникать от других ЭВМ, от аварийных и некоторых других датчиков технологического процесса и т. п.
Семейство микропроцессоров Intel 80×86 поддерживает 256 уровней приоритетных прерываний, вызываемых событиями трех типов:
внутренние аппаратные прерывания
внешние аппаратные прерывания
программные прерывания
Внутренние аппаратные прерывания, иногда называемые отказами (faults), генерируются определенными событиями, возникающими в процессе выполнения программы, например попыткой деления на 0. Закрепление за такими событиями определенных номеров прерываний зашито в процессоре и не может быть изменено.
Внешние аппаратные прерывания инициируются контроллерами периферийного оборудования или сопроцессорами (например, 8087/80287). Источники сигналов прерываний подключаются либо к выводу немаскируемых прерываний процессора (NMI) либо к выводу маскируемых прерываний (INTR). Линия NMI обычно предназначает для прерываний, вызываемых катастрофическими событиями, такими, как ошибки четности памяти или авария питания.
Программные прерывания. Любая программа может инициировать синхронное программное прерывание путем выполнения команды int. MS-DOS использует для взаимодействия со своими модулями и прикладными программами прерывания от 20Н до 3FH (например, доступ к диспетчеру функций MS-DOS осуществляется выполнением команды int 21h). Программы BIOS, хранящиеся в ПЗУ, и прикладные программы IBM PC используют другие прерывания, с большими или меньшими номерами. Это распределение номеров прерываний условно и никаким образом не закреплено аппаратно.
Таблица векторов прерываний
Для того чтобы связать адрес обработчика прерывания с номером прерывания, используется таблица векторов прерываний, занимающая первый килобайт оперативной памяти. Эта таблица находится в диапазоне адресов от 0000:0000 до 0000:03FFh и состоит из 256 элементов – дальних адресов обработчиков прерываний.
Элементы таблицы векторов прерываний называются векторами прерываний. В первом слове элемента таблицы записана компонента смещения, а во втором – сегментная компонента адреса обработчика прерывания.
Вектор прерывания с номером 0 находится по адресу 0000:0000, с номером 1 — по адресу 0000:0004 и т. д. В общем случае адрес вектора прерывания находится путем умножения номера прерывания на 4.
Инициализация таблицы выполняется частично системой базового ввода/вывода BIOS после тестирования аппаратуры и перед началом загрузки операционной системой, частично при загрузке MS-DOS. Операционная система MS-DOS может изменить некоторые вектора прерываний, установленные BIOS.
Таблица векторов прерываний
Номер | Описание |
0h | Ошибка деления. Вызывается автоматически после выполнения команд DIV или IDIV, если в результате деления происходит переполнение (например, при делении на 0). Обычно при обработке этого прерывания MS-DOS выводит сообщение об ошибке и останавливает выполнение программы. При этом для процессора i8086 адрес возврата указывает на команду, следующую после команды деления, а для процессора i80286 и более поздних моделей — на первый байт команды, вызвавшей прерывание |
1h | Прерывание пошагового режима. Вырабатывается после выполнения каждой машинной команды, если в слове флагов установлен бит пошаговой трассировки TF. Используется для отладки программ. Это прерывание не вырабатывается после пересылки данных в сегментные регистры командами MOV и POP |
2h | Аппаратное немаскируемое прерывание. Это прерывание может использоваться по-разному в разных машинах. Обычно оно вырабатывается при ошибке четности в оперативной памяти и при запросе прерывания от сопроцессора |
3h | Прерывание для трассировки. Генерируется при выполнении однобайтовой машинной команды с кодом CCh и обычно используется отладчиками для установки точки прерывания |
4h | Переполнение. Генерируется машинной командой INTO , если установлен флаг переполнения OF. Если флаг не установлен, команда INTO выполняется как NOP. Это прерывание используется для обработки ошибок при выполнении арифметических операций |
5h | Печать копии экрана. Генерируется, если пользователь нажал клавишу <PrtSc>. В программах MS-DOS обычно используется для печати образа экрана. Для процессора i80286 и более старших моделей генерируется при выполнении машинной команды BOUND, если проверяемое значение вышло за пределы заданного диапазона |
6h | Неопределенный код операции или длина команды больше 10 байт |
7h | Особый случай отсутствия арифметического сопроцессора |
8h | IRQ0 – прерывание интервального таймера, возникает 18,2 раза в секунду |
9h | IRQ1 – прерывание от клавиатуры. Генерируется, когда пользователь нажимает и отжимает клавиши. Используется для чтения данных из клавиатуры |
Ah | IRQ2 – используется для каскадирования аппаратных прерываний |
Bh | IRQ3 – прерывание асинхронного порта COM2 |
Ch | IRQ4 – прерывание асинхронного порта COM1 |
Dh | IRQ5 – прерывание от контроллера жесткого диска (только для компьютеров IBM PC/XT) |
Eh | IRQ6 – прерывание генерируется контроллером НГМД после завершения операции ввода/вывода |
Fh | IRQ7 – прерывание от параллельного адаптера. Генерируется, когда подключенный к адаптеру принтер готов к выполнению очередной операции. Обычно не используется |
10h | Обслуживание видеоадаптера |
11h | Определение конфигурации устройств в системе |
12h | Определение размера оперативной памяти |
13h | Обслуживание дисковой системы |
14h | Работа с асинхронным последовательным адаптером |
15h | Расширенный сервис |
16h | Обслуживание клавиатуры |
17h | Обслуживание принтера |
18h | Запуск BASIC в ПЗУ, если он есть |
19h | Перезагрузка операционной системы |
1Ah | Обслуживание часов |
1Bh | Обработчик прерывания, возникающего, если пользователь нажал комбинацию клавиш <Ctrl+Break> |
1Ch | Программное прерывание, вызывается 18,2 раза в секунду обработчиком аппаратного прерывания таймера |
1Dh | Адрес видеотаблицы для контроллера видеоадаптера 6845 |
1Eh | Указатель на таблицу параметров дискеты |
1Fh | Указатель на графическую таблицу для символов с кодами ASCII 128-255 |
20h-5Fh | Используется MS-DOS или зарезервировано для MS-DOS |
60h-67h | Прерывания, зарезервированные для программ пользователя |
68h-6Fh | Не используются |
70h | IRQ8 – прерывание от часов реального времени |
71h | IRQ9 – прерывание от контроллера EGA |
72h | IRQ10 – зарезервировано |
73h | IRQ11 – зарезервировано |
74h | IRQ12 – зарезервировано |
75h | IRQ13 – прерывание от арифметического сопроцессора |
76h | IRQ14 – прерывание от контроллера жесткого диска |
77h | IRQ15 – зарезервировано |
78h — 7Fh | Не используются |
80h-85h | Зарезервировано для BASIC |
86h-F0h | Используются интерпретатором BASIC |
F1h-FFh | Не используются |
Прерывания, обозначенные как IRQ0 – IRQ15 являются внешними аппаратными.
Таблица векторов прерываний— OSDev Wiki
В архитектуре x86 таблица векторов прерываний (IVT) представляет собой таблицу, в которой указаны адреса всех 256 обработчиков прерываний, используемых в реальном режиме.
IVT обычно располагается в 0000: 0000H и имеет размер 400H байтов (4 байта для каждого прерывания). Хотя адрес по умолчанию можно изменить с помощью инструкции LIDT на более новых процессорах, это обычно не делается, потому что это неудобно и несовместимо с другими реализациями и / или более старым программным обеспечением (например,грамм. Программы MS-DOS). Тем не менее, обратите внимание, что код должен оставаться в первом МиБ ОЗУ.
Структура
Записи являются последовательными, то есть первая запись, указанная IDTR, является обработчиком прерываний 0, а остальные следуют последовательно. Формат записи:
+ ----------- + ----------- + | Сегмент | Смещение | + ----------- + ----------- + 4 2 0
Таким образом, мы видим, что действительно легко получить адрес искомого обработчика прерываний: IDTR * 4.Чтобы изменить обработчик прерывания, все, что нужно сделать, это изменить его адрес в таблице.
Схема прерываний процессора
IVT Offset | INT # | Описание ----------- + ----------- + -------------------------- --------- 0x0000 | 0x00 | Разделить на 0 0x0004 | 0x01 | Зарезервированный 0x0008 | 0x02 | Прерывание NMI 0x000C | 0x03 | Точка останова (INT3) 0x0010 | 0x04 | Переполнение (INTO) 0x0014 | 0x05 | Превышен диапазон границ (BOUND) 0x0018 | 0x06 | Неверный код операции (UD2) 0x001C | 0x07 | Устройство недоступно (WAIT / FWAIT) 0x0020 | 0x08 | Двойная ошибка 0x0024 | 0x09 | Переполнение сегмента сопроцессора 0x0028 | 0x0A | Неверный TSS 0x002C | 0x0B | Сегмент отсутствует 0x0030 | 0x0C | Ошибка сегмента стека 0x0034 | 0x0D | Неисправность общей защиты 0x0038 | 0x0E | Ошибка страницы 0x003C | 0x0F | Зарезервированный 0x0040 | 0x10 | Ошибка x87 FPU 0x0044 | 0x11 | Проверка выравнивания 0x0048 | 0x12 | Машинная проверка 0x004C | 0x13 | SIMD Исключение с плавающей точкой 0x00xx | 0x14-0x1F | Зарезервированный 0x0xxx | 0x20-0xFF | Определяемый пользователем
Схема аппаратных прерываний по умолчанию
Мастер 8259:
Некоторые прерывания, отображаемые 8259 по умолчанию, перекрываются с некоторыми обработчиками исключений процессора.Они могут быть переназначены через порты ввода-вывода 8259.
IVT Offset | INT # | IRQ # | Описание ----------- + ------- + ------- + ---------------------- -------- 0x0020 | 0x08 | 0 | PIT 0x0024 | 0x09 | 1 | клавиатура 0x0028 | 0x0A | 2 | 8259A подчиненный контроллер 0x002C | 0x0B | 3 | COM2 / COM4 0x0030 | 0x0C | 4 | COM1 / COM3 0x0034 | 0x0D | 5 | LPT2 0x0038 | 0x0E | 6 | Флоппи контроллер 0x003C | 0x0F | 7 | LPT1
Раб 8259:
IVT Offset | INT # | IRQ # | Описание ----------- + ------- + ------- + ---------------------- -------- 0x01C0 | 0x70 | 8 | RTC 0x01C4 | 0x71 | 9 | Unassigned 0x01C8 | 0x72 | 10 | Unassigned 0x01CC | 0x73 | 11 | Unassigned 0x01D0 | 0x74 | 12 | Контроллер мыши 0x01D4 | 0x75 | 13 | Математический сопроцессор 0x01D8 | 0x76 | 14 | Контроллер жесткого диска 1 0x01DC | 0x77 | 15 | Контроллер жесткого диска 2
См. Также
,деловых людей, сидящих за столом вектор, смеющиеся друзья офис коллеги мужчина и женщина, разговаривающие друг с другом бизнес-команда изолированных плоский мультфильм характер иллюстрации
5000 * 5000
Современный плоский дизайн Концепция коллективной работы с участием персонажей в собрании и презентации может использовать веб-дизайн плоской векторной стратегии рекламного контента для веб-дизайна и бизнес-рекламы
4375 * 4375
фон с деревянным столом и золотыми огнями 3110
800 * 800
2020 календарь с вектором креативный дизайн
5000 * 5000
плоский мультфильм иллюстрации человек делает работу в офисе дома
2334 * 2334
бизнес встречи плоский дизайн векторные иллюстрации стратегия маркетинга с людьми изолированы
90 004 2334 * 2334деловая дискуссия и метафора концепции мозгового штурма с группой плоских людей, думающих и работающих на ноутбуке, сидящих с коллегами или коллегами по работе
3967 * 3967
деревянный стол на фоне классной доски 2802
800 * 800
концепция совместной работы и тимбилдинга плоская векторная иллюстрация
5000 * 5000
вектор поп-арт иллюстрация человека и сидящего в пе
800 * 800
молодая женщина пить кофе и работать на ноутбуке
1200 * 1200
векторная иллюстрация группа людей персонажи обдумывают идею стратегии анализа подготовить бизнес-проект запустить плоскую иллюстрацию команда управление проектом мозгового штурма
3967 * 3967
современный плоский дизайн концепции дизайна командной работы с символами в собрании и презентации можно использовать для баннера бизнес маркетинг контент стратегия целевую страницу веб дизайн плоский векторные иллюстрации
4375 * 4375
рождественские шары на деревянной палубе 3010
800 * 800
деревянный стол глядя на фоне боке огни 0109
800 * 800
непрерывное рисование одной линии вилки, ложки, тарелки, ножи и всякую кухонную утварь можно использовать для логотипов, тортов, визитных карточек, баннеров и других черно-белых векторных иллюстраций
5000 * 5000
образование онлайн вектор домашний онлайн образовательный сервис молодой человек в наушниках, работающий с компьютерной современной технологией обучения, изолированных плоский мультфильм иллюстрации
5000 * 5000
творческий запуск рабочих бизнес-концепция с группой молодых сотрудников обсуждают и мозговой штурм, чтобы получить представление с идеальный крайний срок метафора векторные иллюстрации для веб-страницы и элемента целевой страницы
3967 * 3967
процесс мозгового штурма вектор коллективная работа сотрудников вокруг стола творческая команда идея группа бизнесменов встреча маркетинговые исследования плоские изолированные иллюстрации шаржа
5000 * 5000
цельные деревянные столы и столы
1200 * 1200
красивая иллюстрация дизайна 2020 календарей
4900 * 4900
бизнес-концепция веб-дизайна с людьми во встрече и представлении может использоваться для веб-маркетинга страница веб-дизайн плоская векторная иллюстрация
4375 * 4375
плоская мультипликационная иллюстрация время исследования
2334 * 2334
место установки с иконой ложки и вилки пластины
5000 * 5000
вектор плоское рабочее место обучения интервью на рабочем столе иллюстрация
1200 * 1200
Festa Junina иллюстрация с флагами партии акустической гитары и фонарь на желтом фоне типография на старинном деревянном столе вектор бразильский дизайн фестиваля июнь для поздравительной открытки приглашения или праздника
5000 * 5000
вектор плоской иллюстрации группа людей персонажи обдумывают идею стратегии анализа подготовить бизнес-проект запуска концепции коллективного управления проектом мозгового штурма
3967 * 3967
кофейная чашка вектор вид сверху горячий американо кофе эспрессо чашка быстрого питания напиток s белая кружка реалистичные изолированных иллюстрация
5000 * 5000
бизнесменов, работающих с компьютерным столом и мобильной векторные иллюстрации
800 * 800
значки
5000 * 5000
значок кулинарии и кухни
5000 * 5000
чистый класс средней школы с меловой зеленой доской коричневый рабочий стол стул с глобусом и большими окнами для мультфильма векторные иллюстрации интерьер
1250 * 1250
ученик с ручкой в написании экзаменов на листе бумаги вектор изолированных иллюстрация
5000 * 5000
Таблица PNG Картинки | Векторные и PSD файлы
деревянный стол обеденный стол мультфильм
6025 * 2663
мультфильм рисованной иллюстрации дизайн таблицы с коммерческими элементами
2000 * 2000
деревянный стол элемент png
2000 * 2000
массивные деревянные столы и столы
1200 * 1200
деревянный стол деревянный стол круглый стол обеденный стол
2000 * 2000
белый пустой квадратный стол изолированные мебельная платформа реалистичные векторные иллюстрации
5000 * 5000
дизайн школьной партой
2000 * 2000
вектор 3d подставка для стола деревянный шаблон для представления объекта реалистичные векторные иллюстрации
5000 * 5000
c4d стерео стеклянный прозрачный деревянный стол
2000 * 2000
деревянный стол
1200 * 1200
обеденный стол
1200 * 1200
мебель круглого стола
1200 * 1200
фон с деревянным столом и золотыми огнями 3110
800 * 800
календарное время таблица месячных календарных диаграмм
1200 * 1200
деревянный стол на фоне классной доски 2802
800 * 800
деловых людей, сидящих за столом, смеющихся друзей офис коллеги мужчина и женщина разговаривают друг с другом бизнес команда изолированных плоский мультфильм характер иллюстрации
5000 * 5000
деревянный стол с видом на боке огни фон 0109
800 * 800
процесс мозгового штурма вектор работа в команде сотрудники вокруг стола творческая команда идея группа встречи бизнесменов маркетинговые исследования плоские изолированные иллюстрации шаржа
5000 * 5000
круглый стол и мебель для стульев
1200 * 1200
NEW
шаблон ценообразования
4000 * 4000
текстура розовый геометрическая гостиная диван настольная лампа мебель для дома мобильный конец рекламный шаблон
1200 * 1200
деревянный стол с видом на летний пейзаж 0702
800 * 800
яблочный iphone 11 макет на синем деревянном столе
1200 * 1200
мультфильм ручная роспись обеденный стол стул
5403 * 4293
красная свеча лампа настольная лампа сообщение
1201 * 1201
таблица умножения для детей
4000 * 4000 * 4000
NEW
укрываясь под столом во время земляных работ hquake
1200 * 1200
желтая свеча настольная лампа стол восковой фитиль
1201 * 1201
бумажный календарь пустой набор вертикальный реалистично стоящий пустой спиральный настольный календарь различного размера на белом фоне изолированных векторные иллюстрации
5000 * 5000
интерьер дома с диваном и столом
1200 * 1200
футбол элемент границы настольного тенниса
1200 * 1200
demo icon image image
2000 * 2000
мраморная столешница материал
2000 * 2000
работа в команде концепция дизайна с людьми работать над столом бизнес лидерство сотрудничество партнерство метафора команда работа символ плоская векторная иллюстрация
4375 * 4375
социальные информационная таблица карты сети
1200 * 1200
бизнес офис вектор человек человек характер люди компьютер иллюстрация менеджер работник бизнесмен работа плоский стол мужской мультфильм профессиональный работа дизайн работник значок концепция корпоративное рабочее место стол современная команда сидя ноутбук фон счастливые молодые
5000 * 5000
1200 * 1200
ген периодической таблицы молекула
1200 * 1200
красная свеча лампа настольная лампа post
1200 * 1200
домашний круглый стол мебель ваза
1200 * 1200
золотая свеча плоская свеча настольная лампа настольная лампа
1200 * 1200
текстурированная настольная лампа исследование диван мебель передвижной конец шаблон поощрения
1200 * 1200
настольная лампа торшер освещение
1200 * 1200
Структура данных
Таблица векторов прерываний ( IVT ) — это структура данных, которая связывает список обработчиков прерываний со списком запросов прерываний в таблице векторов прерываний. Каждая запись таблицы векторов прерываний, называемая вектором прерываний, является адресом обработчика прерываний. Хотя эта концепция является общей для процессорных архитектур, IVT могут быть реализованы в виде архитектурно-ориентированной моды.Например, таблица диспетчеризации является одним из способов реализации таблицы векторов прерываний.
Энциклопедия YouTube
1/3
Просмотров:12 257
8 859
39 648
✪ 8086 Ассемблер Язык | Часть 04 — Прерывания и таблица векторов Intreupt | Викаш Мехта
✪ Учебное пособие по TM4C123: Таблица векторов прерываний — Добавление функций в таблицу
Содержание
Фон
Большинство процессоров имеют таблицу векторов прерываний, включая чипы Intel, AMD, Infineon, Microchip [1] Atmel, [2] NXP, ARM [3] [4] и т. Д.
Обработчики прерываний
Методы обработки
Таблица векторов прерываний используется в трех самых популярных методах определения начального адреса подпрограммы обработки прерывания:
«Предопределено»
«Предопределенный» метод загружает программный счетчик (ПК) напрямую с адресом некоторой записи в таблице векторов прерываний. Сама таблица переходов содержит исполняемый код. Хотя в принципе чрезвычайно короткий обработчик прерываний может храниться полностью внутри таблицы векторов прерываний, на практике код каждой записи представляет собой отдельную инструкцию перехода, которая переходит к полной процедуре обслуживания прерывания (ISR) для этого прерывания.Intel 8080 [5] , Atmel AVR [6] [7] и все микроконтроллеры 8051 и Microchip [8] используют предопределенный подход.
«Fetch»
Метод «выборки» загружает ПК косвенно, используя адрес некоторой записи в таблице векторов прерываний, чтобы извлечь адрес из этой таблицы, а затем загружает ПК с этим адресом. [8] Каждая запись IVT является адресом подпрограммы обработки прерывания. Все микроконтроллеры Motorola / Freescale используют метод выборки. [8]
«Подтверждение прерывания»
Для метода «подтверждение прерывания» внешнее устройство присваивает ЦПУ номер обработчика прерываний. Метод подтверждения прерываний используется Intel Pentium и многими старыми микропроцессорами. [8]
Когда на процессор влияет прерывание, он ищет обработчик прерываний в таблице векторов прерываний и передает ему управление.