Лекции.Орг


Поиск:




Категории:

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

 

 

 

 


Регистры. К регистрам общего назначения относятся:




К регистрам общего назначения относятся:

AX (Accumulate – регистр-аккумулятор);

• ВХ (Base – базовый регистр);

• СХ (Count – регистр счетчика);

• DX (Data – регистр данных);

• SP (Stack Pointer – указатель стека);

• ВР (Base Pointer – указатель базы);

DI (Destination Index – индекс приемника);.

• SI (Source Index – индекс источника).

Хотя многие команды процессора работают с какими-то определенными регистрами, например команды пересылки строк – с регистрами Dl и SI, умножения и деления – с регистрами DX и АХ, перекодировки – с регистром ВХ и т. д., все регистры общего назначения могут почти без ограничений участвовать в арифметических и логических операциях. Каждый из регистров АХ, ВХ, СХ и DX может рассматриваться не только как один 16-разрядный, но и как два восьмиразрядных. В этом случае байт, содержащий биты с 0 по 7, называется младшим (Low), а с 8 по 15 - старшим (High). Обращение к этим восьмиразрядным регистрам осуществляется по именам АН, AL, ВН, BL, СН, CL, DH и DL.

Следующие регистры называются сегментными и предназначены для хранения значений адресов сегментов:

• CS (Code Segment – сегмент кода);

• DS (Data Segment –сегмент данных);

• SS (Stack Segment – сегмент стека);

• ES (Enhanced Segment – дополнительный сегмент данных).

Значения, находящиеся в регистрах DS, SS и ES, используются совместно со значениями, находящимися в регистрах общего назначения, для вычисления эффективных адресов данных.

Для определения эффективного адреса очередной команды, предназначенной для выполнения процессором, используется значение сегмента, находящееся в регистре CS, и значение смещения, находящееся в регистре адреса команды IP (Instruction Pointer). Регистр IP не может непосредственно использоваться в ассемблерных программах.

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

• О (Overflow) – флаг переполнения. Указывает, что в результате выполнения арифметической команды возникло переполнение старшего разряда результата.

• D (Direction) – флаг направления. Определяет, в каком направлении будут пересылаться данные строковыми командами - от младших адресов к старшим или наоборот.

• I (Interrupt) – флаг разрешения прерываний. Указывает на возможность внешних прерываний.

• Т (Trap) – флаг пошагового выполнения. Устанавливает выполнение команд процессора в пошаговом режиме (для отладки программ).

• S (Sign) – знаковый флаг. Содержит знак результата после выполнения арифметических операций (0 = '+', 1 = '-').

• Z (Zero) – флаг ноля. Содержит 1, если результат арифметической операции или операции сравнения ненулевой, в противном случае содержит 0.

• A (Auxiliary) – дополнительный флаг переноса. Используется некоторыми арифметическими командами и содержит значение переноса из 3-го бита восьмибитовых данных.

• Р (Parity) – флаг контроля четности. Содержит 1, если сумма единиц в восьми младших разрядах регистра является четным числом, или 0, если она нечетна (Р=1 для числа 0101 и для ОНО).

• С (Carry) – флаг переноса. Используется арифметическими командами и командами сдвигов.

Ниже приведена схема флагового регистра с обозначением размещения в нем отдельных флагов. Биты, обозначенные как X, программами на ассемблере не используются.

 

15 ____________________________________ 0_ fxTxlxxlOlDlllTlSlZlxlAlxlPlxlCl





Поделиться с друзьями:


Дата добавления: 2015-10-01; Мы поможем в написании ваших работ!; просмотров: 1437 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

В моем словаре нет слова «невозможно». © Наполеон Бонапарт
==> читать все изречения...

2217 - | 2180 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.007 с.