INT: различия между версиями
Nil (обсуждение | вклад) м |
Dimouse (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
'''INT''' — Interrupt, то есть прерывание, а также команда процессора Intel x86. | '''INT''' — Interrupt, то есть прерывание, а также команда процессора Intel x86. | ||
− | Прерывание — это особое событие (начиная с процессора Intel 80386 прерывание и является частью множества особых событий, то есть exception, исключений), заставляющее процессор прерывать текущие вычисления и перейти на выполнение кода — обработчика прерываний. В реальном режиме работы процессора | + | |
− | В | + | Прерывание — это особое событие (начиная с процессора [[Intel 80386]] прерывание и является частью множества особых событий, то есть exception, исключений), заставляющее процессор прерывать текущие вычисления и перейти на выполнение кода — обработчика прерываний. В реальном режиме работы процессора Intel x86 адреса, по которым надлежит переходить в случае наступления прерываний, хранятся в таблице векторов прерываний, располагающейся с нулевого адреса памяти, которая хранит 256 длинных указателей (сегмент::смещение). При наступлении команды INT# происходит сохранение адреса текущей команды в стеке и переход по адресу, находящемуся в таблице под номером #. Прерывания могут быть как программными, так и аппаратными, к примеру, исключениями являются попытка деления на ноль и выполнение команд сопроцессора без наличия сопроцессора. В последнем случае в обработчике прерывания зачастую находился эмулятор сопроцессора. |
+ | |||
+ | В Intel 80386 процессоре (и в более новых) в защищённом режиме используются другие методы. | ||
== См. также == | == См. также == | ||
Строка 9: | Строка 11: | ||
== Ссылки == | == Ссылки == | ||
* [http://ru.wikipedia.org/wiki/Таблица_векторов_прерываний Википедия о таблице прерываний] | * [http://ru.wikipedia.org/wiki/Таблица_векторов_прерываний Википедия о таблице прерываний] | ||
+ | |||
+ | [[Категория:Информационные_технологии]] |
Текущая версия на 21:24, 12 декабря 2015
INT — Interrupt, то есть прерывание, а также команда процессора Intel x86.
Прерывание — это особое событие (начиная с процессора Intel 80386 прерывание и является частью множества особых событий, то есть exception, исключений), заставляющее процессор прерывать текущие вычисления и перейти на выполнение кода — обработчика прерываний. В реальном режиме работы процессора Intel x86 адреса, по которым надлежит переходить в случае наступления прерываний, хранятся в таблице векторов прерываний, располагающейся с нулевого адреса памяти, которая хранит 256 длинных указателей (сегмент::смещение). При наступлении команды INT# происходит сохранение адреса текущей команды в стеке и переход по адресу, находящемуся в таблице под номером #. Прерывания могут быть как программными, так и аппаратными, к примеру, исключениями являются попытка деления на ноль и выполнение команд сопроцессора без наличия сопроцессора. В последнем случае в обработчике прерывания зачастую находился эмулятор сопроцессора.
В Intel 80386 процессоре (и в более новых) в защищённом режиме используются другие методы.