INT: различия между версиями
Nil (обсуждение | вклад) (Новая страница: «'''INT''' — Interrupt, то есть прерывание, а также команда процессора Intel x86. Прерывание — это особо…») |
Dimouse (обсуждение | вклад) Нет описания правки |
||
| (не показаны 2 промежуточные версии 1 участника) | |||
| Строка 1: | Строка 1: | ||
'''INT''' — Interrupt, то есть прерывание, а также команда процессора Intel x86. | '''INT''' — Interrupt, то есть прерывание, а также команда процессора Intel x86. | ||
Прерывание — это особое событие (начиная с процессора Intel 80386 прерывание и является частью множества особых событий, то есть exception, исключений), заставляющее процессор прерывать текущие вычисления и перейти на выполнение кода — обработчика прерываний. В реальном режиме работы процессора | |||
В | Прерывание — это особое событие (начиная с процессора [[Intel 80386]] прерывание и является частью множества особых событий, то есть exception, исключений), заставляющее процессор прерывать текущие вычисления и перейти на выполнение кода — обработчика прерываний. В реальном режиме работы процессора Intel x86 адреса, по которым надлежит переходить в случае наступления прерываний, хранятся в таблице векторов прерываний, располагающейся с нулевого адреса памяти, которая хранит 256 длинных указателей (сегмент::смещение). При наступлении команды INT# происходит сохранение адреса текущей команды в стеке и переход по адресу, находящемуся в таблице под номером #. Прерывания могут быть как программными, так и аппаратными, к примеру, исключениями являются попытка деления на ноль и выполнение команд сопроцессора без наличия сопроцессора. В последнем случае в обработчике прерывания зачастую находился эмулятор сопроцессора. | ||
В Intel 80386 процессоре (и в более новых) в защищённом режиме используются другие методы. | |||
== См. также == | |||
*[[DOS]] | |||
*[[IRQ]] | |||
== Ссылки == | == Ссылки == | ||
* [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 процессоре (и в более новых) в защищённом режиме используются другие методы.