Регистры общего назначения, регистры-указатели и индексные регистры на общих основаниях могут использоваться при выполнении абсолютного большинства арифметических и логических операций. Однако в основном их применение определено конкретным назначением этих регистров.
Регистры ЕAХ, ЕВХ, ЕСХ, ЕDХ предназначены прежде всего для хранения данных и результатов арифметических и логических операций.
Регистры ЕSP, ЕBP, ЕSI, ЕDI используются, как правило, при формировании внутрисегментных смещений адресуемых операндов (их исполнительных адресов ЕА).
Указательные регистры ЕSP (SP), ЕBP (BP) хранят смещение в пределах текущего стекового сегмента. Регистр ЕSP выполняет функции указателя вершины стека. Его содержимое автоматически изменяется при выполнении команд с участием стека. Назначение этого регистра практически исключает его использование как регистра общего назначения.
31 16 15 8 7 0
EAX |
AH |
AL |
AX |
|
EDX |
DH |
DL |
DX |
|
ECX |
CH |
CL |
CX |
|
EBX |
BH |
BL |
BX Базовые |
|
EBP |
BP |
BP регистры |
||
ESP |
SP |
Указатель стека |
||
ESI |
SI |
Индексные |
||
EDI |
DI |
регистры |
Регистры общего назначения, базовые и индексные регистры
31 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Резерв |
ID |
VIP |
VIF |
AC |
VM |
R |
0 |
NT |
IOPL |
OF |
DF |
IF |
TF |
SF |
ZF |
0 |
AF |
0 |
PF |
1 |
CF |
Регистр признаков EFLAGS
31 16 15 0
IP |
EIP |
Указатель команд
Рис. Основные функциональные регистры прикладной архитектуры процессора Pentium
Индексные регистры ЕSI (SI), ЕDI (DI) при выполнении строковых команд хранят внутрисегментные смещения соответственно в текущем сегменте данных, определяемом селектором DS, и в текущем дополнительном сегменте, адресуемом с помощью селектора ES.
В системе команд процессоров х86 имеется ряд команд, в которых регистры ЕAХ, ЕВХ, ЕСХ, ЕDХ используются для выполнения специальных функций и адресуются неявно, что дает выигрыш в длине команд.
Регистр ЕАХ (АХ) выполняет функции аккумулятора. С ним связаны операции умножения, деления, ввода-вывода, операции десятичной арифметики.
Регистр ЕВХ (ВХ) используется как указатель адреса при косвенной адресации. В 32‑разрядных режимах адресации при наличии постбайта адресации SIB в качестве указателей адреса при косвенной адресации также могут использоваться регистры ЕАХ, ЕСХ и ЕDХ.
Регистр СХ используется в качестве счетчика циклов в командах управления циклом или для задания числа повторений в командах строковых операций. Регистр СL определяет число сдвигов в командах сдвиговых операций.
Регистр ЕDХ (DХ) используется как расширитель аккумулятора в командах умножения и деления 32-битовых (16-битовых) слов. При умножении в этом регистре размещаются старшие 32 бита (16 бит) 64-разрядного (32-разрядного) результата, а при делении в регистре ЕDХ (DХ) формируется остаток. Кроме того, при реализации косвенной адресации к портам ввода-вывода в командах IN и OUT регистр DХ используется для хранения адреса порта.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.