Регистры состояния и управления
В микропроцессор включены несколько регистров, которые постоянно содержат информацию о состоянии как самого микропроцессора, так и программы, команды которой в данный момент исполняются. К этим регистрам относятся:
Регистр флагов Flags (F);
Регистр указателя команды IP.
Используя эти регистры, можно получать информацию о результатах выполнения команд и влиять на состояние самого микропроцессора.
Регистр флагов
CF (Carry Flag) – флаг переноса;
PF (Parity Flag) – флаг паритета;
AF (Auxiliary Flag) – вспомогательный флаг переноса;
ZF (Zero Flag) – флаг нуля;
SF (Sign Flag) – флаг знака;
OF (Overflow Flag) – флаг арифметического переполнения;
TF (Trap Flag) – флаг трассировки;
IF (Interrupt Flag) – флаг прерывания;
DF (Direction Flag) – флаг направления.
Таблица 5.5 Флаги состояния | ||
№ бита | Название | Описание |
CF (Carry Flag) - флаг переноса | Устанавливается в 1, если результат математической операции не помещается в приемник или если при выполнении операции требуется заем. Также используется в командах сдвига. | |
PF (Parity Flag) - флаг паритета | Устанавливается в 1, если младшие 8 бит результата операции содержат четное количество битов, равных 1. | |
AF (Auxiliary Flag) - вспомогательный флаг переноса | Устанавливается в 1, если произошел заем или перенос для 3 бита результата. | |
ZF (Zero Flag) - флаг нуля | Устанавливается в 1, если результат операции равен 0, иначе сбрасывается в 0. | |
SF (Sign Flag) - флаг знака | Применяется при работе с числами со знаком, так как дублирует состояние старшего бита результата, который определяет его знак: 0 - результат является положительным числом, 1 - отрицательным. | |
OF (Overflow Flag) - флаг переполнения | Применяется при работе с числами со знаком, так как устанавливается в 1, если результат операции выйдет за пределы допустимого значения для результата. |
Таблица 5.5 Продолжение Флаги управления | ||
№ бита | Название | Описание |
TF (Trap Flag) - флаг трассировки | Если флаг установлен, то процессор переходит в режим покомандной работы. Используется при отладке программ отладчиками. | |
IF (Interrupt Flag) - флаг прерывания | Если флаг установлен, то маскируемые аппаратные прерывания разрешены. | |
DF (Direction Flag) - флаг направления | Задает направление обработки цепочек. Если флаг установлен, то значение регистров ESI и EDI при цепочечных операциях будет автоматически уменьшаться, то есть цепочки будут обрабатываться от конца к началу. |
Дата добавления: 2016-03-10; просмотров: 830;