Алгоритм - Учебный центр

Версия сайта для слабовидящих
Заполните форму ниже! Мы вам перезвоним!

Нажав на кнопку "Отправить", Я даю своё согласие на автоматизированную обработку указанной информации, распространяющейся на осуществление всех действий с ней, включая сбор, передачу по сетям связи общего назначения, накопление, хранение, обновление, изменение, использование, обезличивание, блокирование, уничтожение и обработку посредством внесения в электронную базу данных, систематизации, включения в списки и отчетные формы.


Программно доступные регистры процессоров INTEL (ликбез).

Программно доступные регистры процессоров INTEL (ликбез).

Процессоры содержит программно доступные регистры, которые принято объединять в три группы:

- регистры данных,

- регистры указатели,

- сегментные регистры.

Кроме того, в состав процессора входят счетчик команд и регистр флагов. В защищенном режиме добавляются регистры системных адресов, отладочные регистры.

Разрядность регистров зависит от разрядности процессора: 8086 и 80286 - 16-и разрядные, 80386, 80486 и Pentium - 32-х разрядные. Содержимое 16-и разрядного регистра называют словом (два байта), 32-х разрядного регистра двойным словом (четыре байта). Современные процессоры Intel имеют и 64-х разрядные регистры.

Регистры данных (или регистры общего назначения):

 

Регистры указатели:

 

Сегментные регистры:

 

Далее показаны и регистры процессоров поддерживающих 64-х битную архитектуру:

 

Счетчик команд:

В Счетчике команд процессора (регистре команд, указателе команд) аппаратно формируется адрес очередной выбираемой команды.

 

Регистр флагов:

 

Регистр флагов эквивалентен регистру состояния процессора других систем. Он содержит информацию о текущем состоянии процессора:

 

VM (бит 17) - обеспечивает режим виртуального 8086 в защищенном режиме;

RF (бит 16) - флаг возобновления, временно прекращает отладку, возвращая процессор к нормальному выполнению программы;

NT (бит 14) - вложенная задача, процессор использует этот флаг для управления последовательностью прерываемых и вызываемых задач;

IOPL (биты 13-12) - уровень привилегий ввода-вывода, используется в защищенном режиме;

OF (бит 11) - флаг переполнения, устанавливается, если операция привела к переносу (заему) в знаковый (самый старший) бит результата, но не привела к переносу (заему) из самого старшего бита, или наоборот;

DF (бит 10) - флаг направления, показывает должны ли регистры ESI и EDI инкрементироваться или декрементироваться во время операций над строками. Если флаг сброшен они инкрементируются, иначе - декрементируются;

IF (бит 9) - разрешение прерываний, очистка этого бита запрещает процессору реагировать на внешние маскируемые прерывания;

TF (бит 8) - флаг ловушки, установка флага переводит процессор в пошаговый режим для отладки;

SF (бит 7) - флаг знака, устанавливается если есть 1 в старшем бите результата;

ZF (бит 6) - флаг нуля, устанавливается если все биты результата равны 0;

AF (бит 4) - флаг вспомогательного переноса, используется для упрощения сложения и вычитания упакованных двоично-десятичных чисел. Независимо от длины операнда (8, 16 или 32 бита) флаг AF установлен, если операция привела к заему из бита 3 при вычитании или переносу из бита 3 при сложении, иначе он сброшен. Это связано с тем, что двоично-десятичные числа используют биты с 0 по 3 для представления десятичных цифр;

PF (бит 2) - флаг четности, устанавливается если младшие восемь бит результата содержат четное число единиц (проверка на четность);

CF (бит 0) - флаг переноса, устанавливается если операция привела к переносу из старшего бита при сложении или к заему в старший бит при вычитании.

 

 

 

 

 


Лицензия