Наиболее часто программист оперирует регистрами общего назначения (РОН). К ним относятся регистры AX, BX, CX, DX, а в процессорах, начиная с Intel 80386 и выше – EAX, EBX, ECX, EDX. Регистры ЕхХ – 32-разрядные, хХ – 16-разрядные. Каждый из последних в свою очередь состоит из двух 8-битовых регистров xL и xH. Нижеприведенный рисунок иллюстрирует общую структуру РОН на примере регистра АХ.
AX
EAX
Рисунок 4.4. Общая структура РОН
Каждый из этих регистров может использоваться для временного хранения любых данных, при этом можно работать с каждым регистром целиком, а можно отдельно с каждой его половиной:
- регистры АН, ВН, СН, DH - старшие байты (Hight);
- регистры AL, BL, CL, DL - младшие байты (Low) соответствующих 2-ух байтовых регистров.
Регистры AL, АН образуют соответственно младший и старший байты условного регистра АХ.
Всеми этими регистрами можно пользоваться при программировании, но ряд команд использует их неявным способом. Например:
регистрАХ, аккумулятор, используется при умножении и делении слов, в операциях ввода-вывода и в некоторых операциях над строками;
регистр AL используется при выполнении аналогичных операций над байтами, а также при преобразовании десятичных чисел и выполнении над ними арифметических операций;
регистр АН используется при умножении и делении байтов;
регистрВХ, базовый регистр, часто используется при адресации данных в памяти; регистрСХ, счетчик, используется как счетчик числа повторений цикла и в качестве номера позиции элемента данных при операциях над строками. Регистр CL используется как счетчик при операциях сдвига и циклического сдвига на несколько битов;
регистрDX, регистр данных, используется при умножении и делении слов. Кроме этого используется в операциях ввода-вывода как номер порта.