Регистры общего назначения. Эти регистры используются практически без ограничений в арифметических и логических операциях (хотя иногда и могут иметь жесткое функциональное назначение)
Эти регистры используются практически без ограничений в арифметических и логических операциях (хотя иногда и могут иметь жесткое функциональное назначение). Также они могут использоваться в качестве компонентов адреса каких-либо данных в памяти.
Регистр-аккумулятор (AX|AH|AL) (Accumulator register).
Основной регистр, который применяется для хранения промежуточных данных и выполнения арифметических и логических операций. Некоторые команды генерируют более эффективный код, если они имеют ссылки на регистр АХ.
Базовый регистр (BX|BH|BL) (Base register).
Используется при выполнении арифметических и логических операций и при адресации объектов в памяти.
Регистр-счетчик (CX|CH|CL) (Counter register).
Используется при выполнении арифметических и логических операций и как счетчик цикла.
Регистр данных (DX|DH|DL) (Data register).
Основное назначение заключается в хранении промежуточных данных.
Каждый из этих регистров поделен на две части по восемь бит (см. рис.2.3), с которыми можно работать как с независимыми 8-битными регистрами (AH, AL, BH, BL, CH, CL, DH, DL). Младшие части регистров имеют в названии букву L (от англ. слова Low – младший), а старшие H (от англ. слова High – старший).
Индексные регистры также относятся к регистрам общего назначения и могут использоваться при выполнении арифметических и логических операций, для работы с массивами, для поддержки цепочечных операций и при адресации объектов в памяти.
Индекс источника (SI) (Source Index register).
Содержит индекс источника (текущий адрес элемента в массиве или цепочке источнике). Часто используется в паре с регистром DS при операциях над цепочками.
Индекс приемника (DI) (Destination Index register).
Содержит индекс приемника (получателя) (текущий адрес элемента в массиве или цепочке приемнике). Часто используется в паре с регистром ES при операциях над цепочками.
Регистры-указатели также относятся к регистрам общего назначения и могут использоваться при выполнении арифметических и логических операций, а также для работы со стеком.
Регистр указателя стека (SP) (Stack Pointer register).
Содержит указатель вершины стека в текущем сегменте стека.
Регистр указателя базы кадра стека BP (Base Pointer register).
Предназначен для организации произвольного доступа к данным внутри стека.
Регистры BX, SI, DI и BP часто используются для косвенной адресации (модификация адреса), когда операнд берется из памяти по адресу, рассчитанному через регистр.