Регістри загального призначення
ах: |
ah |
al |
Суматор |
Accumulator |
bx: |
bh |
bl |
Базовий |
Base |
cx: |
ch |
cl |
Лічильник |
Count |
dx: |
dh |
dl |
Регістр даних |
Data |
У процесорі 8080 були байтові регістри A, B, C, D, але потім їх розширили до розміру слова. Звідси з'явилися нові назви регістрів : AX, BX, CX, DX (eXtended).
У регістрі-суматорі зазвичай містять результати складання, віднімання і тому подібне
Базовий регістр часто указує на початкову адресу структури в пам'яті.
Лічильник визначає кількість повторів деякої операції.
Регістр даних найчастіше містить дані, передавані для обробки в підпрограми.
У регістрів AX, BX, CX, DX можна здійснювати доступ до старших і молодших половин. Позначають ці половини буквами H (High - вище, старший) і L (Low - нижче, молодший) і першою буквою з назви регістра:
AH і AL - в AX
Таким чином, можливий доступ як до всього регістра AX, так і до будь-якої його половини.
|
|
|
Індексні регістри (покажчики):
|
|
|
sp |
Стековий покажчик |
Stack pointer |
|
|
bp |
Базовий покажчик |
Base pointer |
|
|
si |
Індекс джерела |
Source index |
|
|
di |
Індекс призначення |
Destination index |
|
Індексні регістри забезпечують доступ до окремих байтів пам'яті:
Індексний регістр + Сегментний регістр - використовується для вказівки точного місця пам'яті.
Індексні регістри тісно пов'язані з певними операціями.
Покажчик стека sp завжди указує на вершину стека процесора.
Покажчик бази bp зазвичай адресує змінні, що зберігаються в стеку.
Індекс джерела si і індекс призначення di відомі під назвою строкових регістрів і служать для виконання операцій над байтовими рядками (символьний рядок).
|
|
|
Сегментні регістри:
|
|
|
cs |
Рег. сегменту коди |
Code segment |
|
|
ds |
Рег. сегменту даних |
Data segment |
|
|
ss |
Рег. сегменту стека |
Stack segment |
|
|
es |
Доп. сегментний |
Extra segment |
|
Регістр сегменту коди cs указує в пам'яті на початок машинної коди програми.
Регістр сегменту даних ds містить початкова адреса змінних програми.
Регістр сегменту стека ss визначає початок стекового простору.
Додатковий сегментний регістр es є допоміжним.
Сегментні регістри служать для звернення до оперативної пам'яті. Сегментні регістри є строго спеціалізованими регістрами, над ними не можна виконувати математичні обчислення і зберігати в них результати інших операцій.
