Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






INT тип_прерывания






где тип_ прерывания - номер, идентифицирующий один из 256 различных векто­ров, находящихся в памяти. Таким образом, каждому из 256 прерываний соответствует один вектор (4 байта памяти, где хранятся IP и CS программы обработки прерывания). При исполнении команды INT микропроцессор производит следующие действия:

1. Помещает в стек регистр флагов.

2. Обнуляет флаг трассировки TF и флаг включения-выключения прерываний IF для исключения пошагового режима исполнения команд и блокировки других маскируемых прерываний.

3. Помещает в стек значение регистра CS.

4. Вычисляет адрес вектора прерывания, умножая тип_прерывания на 4.

5. Загружает второе слово вектора прерывания в регистр CS.

6. Помещает в стек значение указателя команд IP.

7. Загружает в указатель команд IP первое слово вектора прерывания.

8. Устанавливает флаги IP и TF.

Итак, после исполнения команды INT в стеке окажутся значения регистра флагов и регистров CS и IP, флаги TF и IF будут равны 0, а пара регистров CS: IP будет указывать на начальный адрес программы обработки прерывания.

256 векторов прерывания размещаются в области памяти с младшими адресами. Так как каждый из них имеет длину 4 байта, то все они занимают первые 1К байтов, т.е. область памяти с абсолютными адресами от 0до 3FFH. Например, команда

INT 21Н

заставит микропроцессор 8086 вычислить адрес вектора 54Н (4 21Н). Следователь­но, он получит 16-битовые значения регистров IP и CS, отвечающие программе обработки прерывания, из ячеек 54Н и 56Н соответственно.

Из 256 типов прерываний фирма Intel зарезервировала первые 5 (от 0 до 4) для внутренних прерываний. В IBM PC многие другие типы прерываний зарезерви­рованы для нужд основной системы ввода-вывода (BIOS), а также для операцион­ной системы DOS.

INTO - команда прерывания по переполнению

Команда INTO (interrupt if overflow - прервать при переполнении) представляет собой команду условного прерывания. Она инициирует прерывание лишь тогда, когда флаг переполнения OF равен 1. В этом случае команда INTO передает управление программе обработки прерывания с помощью косвенного вызова через вектор прерывания 4. (Другими словами, команда INTO инициирует прерывание типа 4.)






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.