Реферат: Форматы данных и команды их обработки процессоров Pentium III, Pentium IV
Для 286+ возможно двух- и трехадресное умножение с расширенном тилько в старший байт (два байта для 386+).
Таблица. Инструкции двоичной арифметики
Инструкция Описание
ADC Сложение двух операндов с учетом переноса от предыдущей операции
ADD Сложение двух операндов
СМР Сравнение (вычитание без сохранения результата — установка флагов)
DEC Декремент (вычитание 1, но не действует на флаг CF)
DIV Деление беззнаковое
IDIV Деление знаковое
IMUL Умножение знаковое
INC Инкремент (сложение с 1, но не действует на флаг CF)
MUL Беззнаковое умножение
NEG Изменение знака операнда
SBB Вычитание с заемом
SUB Вычитание
XADD Обмен содержимым и сложение (486+)
Инструкции десятичной арифметики являются дополнением к предыдущим. Они позволяют оперировать с неупакованными (биты [7:4] = 0, биты [3:0] содержат десятичную цифру 0-9) или упакованными (биты [7:4] содержат старшую, биты [3:0] — младшую десятичную цифру 0-9) двоичнодесятичными числами. Арифметические операции над этими числами требуют применения инструкций коррекции форматов.
Таблица. Инструкции десятичной арифметики
Инструкция Описание
ААА Десятичная коррекция после сложения двух неупакованных чисел
AAD Десятичная коррекция перед делением неупакованного двузначного числа
ААМ Десятичная коррекция после умножения двух неупакованных чисел
AAS Десятичная коррекция после вычитания двух неупакованных чисел
DAA Десятичная коррекция AL после сложения двух упакованных чисел
DAS Десятичная коррекция AL после вычитания двух упакованных чисел
Инструкции AAD и ААМ допускают обобщенный формат вызова, при котором коррекция выполняется но любому модулю (а не только по модулю 10).
Инструкции логических операций выполняют все функции булевой алгебры над байтами, словами или двойными словами.
Таблица. Инструкции логических операций
Инструкция Описание