Команды CBW, CWD, CWDE и CDQ используются для расширения размерности числа с учетом знака. Команда CBW (Convert Byte to Word) расширяет байт до слова. Команда CWD (Convert Word to Double) расширяет слово до двойного слова. И наконец команда CDQ (Convert Double to Quad) расширяет двойное слово до четверного слова.
Команда CALL выполняет вызов подпрограммы, адрес которой задан операндом.
Группа команд BT, BTC, BTS и BTR используется для работы с отдельными битами своего операнда. Команда BT (Bit) позволяет получить состояние заданного бита своего операнда. Команды BTC (Bit Change), BTS (Bit Set), BTR (Bit Reset) также получают состояние заданного бита, но помимо этого еще выполняют некоторые действия над этим битом.
Команда BSWAP (Byte Swap) меняет порядок байт в 32-битном регистре на противоположный. Используется для перекодировки из формата представления чисел little-endian в формат big-endian и наоборот.
Команды AND, OR, XOR, NOT - это набор команд для выполнения побитовых логических операций над числами. Команда AND (логическое "И", логическое умножение или конъюнкция) выполняется следующим образом: если бит первого числа установлен в 1 и бит второго числа установлен в 1, то и бит результата тоже будет установлен в 1, иначе бит результата будет сброшен в 0.
Команды ADD и ADC служат для реализации операций сложения чисел в различных вариациях. В качестве операндов для команд сложения могут выступать как регистры, так и ячейки памяти и конкретные значения. Команда ADD производит простое суммирование операндов. Команда ADC производит суммирование операндов и значения флага CF, что позволяет производить суммирование больших чисел, которые не помещающихся в указанные размеры операндов.
Команды AAA, AAD, AAM, AAS служат для работы с двоично-десятичными числами (BCD). Двоично-десятичные числа - это форма представления числа в бинарном кодe. Каждая цифра в формате BCD представлена четырьмя битами, то есть может иметь значения от 0 до 15. Значения от 0 до 9 соответствуют цифрам от 0 до 9, остальные значения являются в формате BCD запрещенными.
Реальный режим - это режим, в котором работал первый процессор семейства x86 - 8086. Все последующие модели микропроцессоров поддерживают этот режим для совместимости со старым программным обеспечением. Поскольку 8086 был 16-разрядным процессором, адресующим не более 1 Мб адресного пространства, то и современные процессоры в реальном режиме также имеют разрядность 16 бит и адресное пространство в 1Мб. Однако, в отличие от 8086, современные процессоры в реальном режиме могут задействовать некоторые дополнительные возможности, например новые регистры, новые команды и т.п.
Стек — это специальным образом организованный участок памяти, используемый для временного хранения переменных, для передачи параметров вызываемым подпрограммам и для сохранения адреса возврата при вызове процедур и прерываний. Легче всего представить стек в виде стопки листов бумаги (это одно из значений слова «stack» в английском языке) — вы можете класть и забирать листы бумаги только с вершины стопки. Таким образом, если записать в стек числа 1, 2, 3, то при чтении они будут получаться в обратном порядке — 3, 2, 1.
По назначению и способу использования регистры процессоров Intel можно разбить на группы: