Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Регистры состояния и управления



К даннаму типу регистров относятся:

IP – регистр указателя команды (Instruction Pointer). Он содержит смещение команды в сегменте кода, которая должна быть выполнена. Этот регистр непосредственно недоступен программисту, но загрузка и изменение его значения производится командами управления (команды условных и безусловных переходов, вызова процедур и др.) осуществляя тем самым переходы в требуемые точки программы.

ip  
     

Рисунок 4. Регистр указателя команды

FLAGS – регистр флагов (Flags register). Отдельные биты этого регистра имеют определённое функциональное назначение и называются флагами. Флаг принимает значение 1, если он установлен, и 0, если он сброшен.

flags         OF DF IF TF SF ZF   AF   PF   CF
                                 

Рисунок 5. Регистр флагов микропроцессора i8086

Флаги можно разделить на две группы:

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

CF – флаг переноса (Carry Flag). Содержит признак переноса информациии из старшего бита (после арифметических операций), а также последний бит при операциях сдвига. 1 – перенос был, 0 – переноса не было.

PF – флаг паритета (Parity Flag). Устанавливается в 1, если 8 младших байтов результата содержат чётное число единиц, и в 0 – если нечётное. Это учитывается в операциях ввода-вывода.

AF – флаг вспомогательного переноса (Auxiliaиy Flag). используется в операциях над двоично-десятичными (BCD) числами. Устанавливается в 1, если результате операции сложения был произведен перенос из разряда 3 в старший разряд или при вычитании был заем в разряд 3 младшей тетрады из значения в старшей тетраде; 0 – переносов (заемов) не было.

ZF – флаг нуля (Zero Flag). Устанавливается в 1, если результат операции равен 0.

SF – флаг знака (Sign Flag). Копирует старший бит результата выполнения команды, показывая, таким образом, знак операции.

OF – флаг переполнения (Overflow Flag). Фиксирует переполнение, т.е. выход результата за пределы допустимого диапазона значений для чисел со знаком. Устанавливается в 1 – в результате операции происходит перенос в старший, знаковый бит результата; 0 – такого переноса нет.

· флаги управления, позволяющие изменять некоторые условия работы процессора.

TF – флаг трассировки (Trace Flag). Используется для осуществления пошагового выполнения программы. Если TF=1, то после выполнения каждой команды процессор реализует процедуру прерывания с номером 1; если TF=0 – обычная работа.

IF – флаг прерывания (Interrupt Flag). Если флаг равен 1, то прерывания от внешних устройств разрешаются, а если 0 – запрещены.

DF – флаг направления (Directory Flag). Используется командами обработки строк. Если DF=0, строка обрабатывается в прямом направлении; если DF=1, обработка идёт в обратном направлении.





Дата публикования: 2014-12-08; Прочитано: 775 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...