Предмет: Информатика, автор: Аноним

Найдите в интернете информацию о регистрах процессора Intel. Какие регистры являются наиболее важными? ​

Ответы

Автор ответа: NikitaVologdin
1

Ответ:

Регистр флагов называется EFLAGS и состоит из 32-бит (из них младшие 16 называются FLAGS, в реальном режиме используется именно FLAGS).

Рассмотрим подробнее его биты, исключая те, которые на данный момент зарезервированы и процессором не используются.

бит 0: флаг переноса, CF (Carry Flag). Указывает на то, что при вычислении арифметической операции произошёл перенос в несуществующий старший разряд или заём из него.

бит 2: флаг четности, PF (Parity Flag). Указывает на то, что количество установленных бит в результате чётно.

бит 4: флаг полупереноса или вспомогательного переноса, AF (Additional Flag). Тоже что и CF, но для тетрад, т.е. перенос/заём из 3 бита в 4.

бит 6: флаг нуля, ZF (Zero Flag). Указывает на то, что результат предыдущей команды содержит одни нули.

бит 8: флаг трассировки, TF (Trace Flag). При установке этого флага, после выполнения каждой инструкции вызывается прерывание INT 1.

бит 9: флаг разрешения прерываний, IF (Interrupt Flag). При сбросе в ноль блокируются маскируемые аппаратные прерывания.

бит 10: флаг направления, DF (Direction Flag). Определяет направление изменения адреса в строковых командах. 0 – увеличение, 1 – уменьшение адресов (оба состояния как для источника так и для приёмника).

бит 11: флаг переполнения, OF (Overflow Flag). Указывает на численное переполнение результата арифметической операции.

биты 13 – 12: уровень привилегий ввода-вывода, IOPL (Input/Output Privileges Level). Определяет минимальный уровень привилегий с которого доступно выполнение команд работы с пространством ввода/вывода.

бит 14: флаг вложенной задачи, NT (Nested Task). Указывает на то, что после выхода из текущей задачи следует вернуться в ту, которая её вызвала.

бит 16: флаг продолжения задачи, RF (Resume Flag). Временно запрещает отладку. Устанавливается автоматически командой IRETD обработчика отладочного прерывания.

бит 17: флаг режима V86, VM (Virtual Mode). Указывает на активность режима эмуляции 8086.

бит 18: флаг контроля за выравниванием, АС (Align Control). Указывает на то, что при обращению пользовательской программы к не выровненным данным следует сгенерировать прерывание.

бит 19: флаг виртуального прерывания, VIF (Virtual Interrupt Flag). Виртуальный флаг IF.

бит 20: флаг ожидания виртуального прерывания, VIP (Virtual Interrupt Pending). Указывает на наличие необработанного аппаратного прерывания.

бит 21: флаг идентификации, ID (Identify). Если программа может изменить состояние этого флага, значит поддерживается инструкция CPUID.

Для части этих битов существуют пары команд установки сброса (например, STI/CLI, STD/CLD).

Другая часть может быть проверена с помощью команд условного перехода (или совмещённых команд проверки-пересылки).

Все оставшиеся можно изменить, сохранив регистр флагов в стек (PUSHF), изменив его там, и загрузив обратно (POPF). При этом зарезервированные регистры трогать не следует, а либо устанавливать в ноль при первой загрузке, либо оставлять прежнее значение.

Объяснение:

Пожалуста вот

Похожие вопросы
Предмет: Немецкий язык, автор: bingo222
Предмет: Русский язык, автор: янаяна4
Предмет: Математика, автор: cooleratov