2.5.5. Арифметические операции ММХ

Команда

Назначение

Процессор

РАООВ приемник.источник

Сложение

ММХ

РАОО\Л/ приемник.источник

Сложение

ММХ

РАООО приемник.источник

Сложение

ММХ

Команды выполняют сложение отдельных элементов данных (байтов - для PADDB, слов - для PADDW, двойных слов - для PADDD) источника (регистр ММХ или переменная) и соответствующих элементов приемника (регистр ММХ). Если при сложении возникает перенос, он не влияет ни на следующие элементы, ни на флаг переноса, а просто игнорируется (так что, например, для PADDB 255 + 1 = 0, если это числа без знака, или -128 + -1 = +127, если со зна-"

ком).

Команда Назначение Процессор

РАООЭВ приемник.источник Сложение с насыщением ММХ

РАООЭМ/приемник.источник Сложение с насыщением ММХ

Команды выполняют сложение отдельных элементов данных (байтов - для РАЕ>Б8В и слов - для РАЕ>Б8\¥) источника (регистр ММХ или переменная) и соответствующих элементов приемника (регистр ММХ). Если при сложении сумма выходит за пределы байта со знаком для РАБОБВ (больше +127 или меньше -128) или слова со знаком для РАВБ8\¥ (больше +32 767 или меньше -32 768), в качестве результата используется соответствующее максимальное или минимальное число; так что, например, для РАЕЮВВ -128 + -1 = -128.

Команда

Назначение

Процессор

PADDUSB приемник, источник

Беззнаковое сложение

ММХ

 

с насыщением

 

PADDUSWnpneMHHK, источник

Беззнаковое сложение

ММХ

 

с насыщением

 

Команды выполняют сложение отдельных элементов данных (байтов - для РАБЭШВ и слов - для РАВБШ\¥) источника (регистр ММХ или переменная) и соответствующих элементов приемника (регистр ММХ). Если при сложении сумма выходит за пределы байта без знака для РАБЭШВ (больше 255 или мень­ше 0) или слова без знака для РАВБШ\¥ (больше 65 535 или меньше 0), то в ка­честве результата используется соответствующее максимальное или минимальное число; так что, например, для РАЕЮШВ 255 + 1 = 255.

Команда

Назначение

Процессор

PSUBB приемник.источник

Вычитание

ММХ

PSUBW приемник.источник

Вычитание

ММХ

PSUBD приемник.источник

Вычитание

ММХ

Команды выполняют вычитание отдельных элементов данных (байтов - для Р8иВВ, слов - для Р8иВ\¥, двойных слов - для Р8иВБ) источника (регистр ММХ или переменная) и соответствующих элементов приемника (регистр ММХ). Если при вычитании возникает заем, он игнорируется (так что, например, для РБиВВ -128 - 1 = +127 - применительно к числам со знаком или 0 - 1 255 -применительно к числам без знака).


Расширение !А ММХ

т

тшшшшш

Команда

Назначение

Процессор

PSUВSВ приемник.источник РЗиВЭУУ приемник, источник

Вычитание с насыщением Вычитание с насыщением

ММХ ММХ

Команды выполняют вычитание отдельных элементов данных (байтов - для РБШБВ и слов - для РБИВБ^ источника (регистр ММХ или переменная) и соот­ветствующих элементов приемника (регистр ММХ). Если при вычитании раз­ность выходит за пределы байта или слова со знаком, в качестве результата ис­пользуется соответствующее максимальное или минимальное число; так что, например, для РБИВБВ -128 - 1 = -128.

Команда

Назначение

Процессор

РЗивиЗВ приемник, источник PSUВUSW приемник, источник

Беззнаковое вычитание с насыщением Беззнаковое вычитание с насыщением

ММХ ММХ

Команды выполняют вычитание отдельных элементов данных (байтов — для РБИВШВ и слов - для Р8ИВШ\¥) источника (регистр ММХ или переменная) и соответствующих элементов приемника (регистр ММХ). Если при вычитании разность выходит за пределы байта или слова без знака, в качестве результата используется соответствующее максимальное или минимальное число; так что, например, для РБиВШВ 0-1=0.

Команда

Назначение

Процессор

РМиШУУ приемник.источник

Старшее умножение

ММХ

Команда умножает каждое из четырех слов со знаком из источника (регистр ММХ или переменная) на соответствующее слово со знаком из приемника (ре­гистр ММХ). Старшее слово каждого из результатов записывается в соответству­ющую позицию приемника.

Команда

Назначение

Процессор

РМШЛЛЛ/ приемник.источник

Младшее умножение

ММХ

Умножает каждое из четырех слов со знаком из источника (регистр ММХ или

переменная) на соответствующее слово со знаком из приемника (регистр ММХ).

Младшее слово каждого из результатов записывается в соответствующую пози­цию приемника.

Команда

Назначение

Процессор

РМАРР\70 приемник.источник

Умножение и сложение

ММХ

Умножает каждое из четырех слов со знаком из источника (регистр ММХ или переменная) на соответствующее слово со знаком из приемника (регистр ММХ). Произведения двух старших пар слов складываются между собой, и их сумма за­писывается в старшее двойное слово приемника. Сумма произведений двух млад­ших пар слов записывается в младшее двойное слово.