Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
INT, INTO - команды прерывания
Команда INT инициирует в процессоре процедуру прерывания, в результате которой управление передается программе обработки прерывания с номером n, который указан в качестве операнда команды INT. В стек прерываемого процесса (текущей программы) заносится содержимое регистра флагов, сегментного регистра CS и указателя команд IP. Затем сбрасывается флажок IF, запрещая внешние прерывания и исключая появление других сигналов прерывания во время процедуры перехода. Наконец из таблицы векторов прерываний в регистры IP и CS передается содержимое двух слов, расположенных по адресам 0: n 4и 0: n 4+2. Процессор, выполняя свой базовый цикл работы, формирует адрес первой команды программы обработки данного прерывания, исполняет ее и все последующие команды программы. В конце программы находится команда IRET, которая восстанавливает из стека содержимое IP и CS основной программы и ее выполнение продолжается с команды стоящей следующей за командой INT. Прерывания могут быть инициированы внешним устройством системы или специальной командой прерывания из программы. У микропроцессора 8086 есть три различные команды прерывания - две команды вызова и одна команда возврата: Команда INT (interrupt - прерывать) имеет формат
|