Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛК_МашЗавЯП_А4.doc
Скачиваний:
157
Добавлен:
10.06.2015
Размер:
19.94 Mб
Скачать
      1. Классификация команд

После обзора команды будут рассмотрены подробно.

Категория

Подкатегория

Команды

Инициализация

EMMS

Передачаданных

Пересылки

MOVD, MOVQ

Упаковка данных

PACKSSWB, PACKSSDW – числа со знаком

PACKUSWB – числа без знака

Распаковка данных

PUNPCKHBW, PUNPCKHWD, PUNPCKHDQ – старшаяполовина

PUNPCKLBW, PUNPCKLWD, PUNPCKLDQ – младшаяполовина

Арифметика

Сложение

Вычитание

Умножение

PADD, PADDS, PADDUS

PSUB, PSUBS, PSUBUS

PMULHW, PMULLW, PMADDWD

Логика

PAND, PANDN, POR, PXOR

Сдвиги

PSLLW, PSLLD, PSLLQ – логические влево

PSRLW, PSRLD, PSRLQ – логические вправо

PSRAW, PSRAD – арифметические(вправо)

Сравнения

PCMPEQB, PCMPEQW, PCMPEQD – на равенство

PCMPGTB, PCMPGTW, PCMPGTD – на значение

Дополнительные

Вычисления

PAVGB, PAVDW - среднее значеие

PSADBW – сумма разностей

Извлечения

PEXTRW – извлечь слово

PINSRW – вставить слово

PMAXUB, PMAXSW – извлечь максимальное

PMINUB, PMINSW – извлечь минимальное

Маска из знаков байтов

PMOVMSKB

      1. Инициализация

        Команда

        Описание

        EMMS

        EmptyMMx State

        Очистка стека регистровMMX. Установка всех единиц в слове тегов.

      2. Передача данных

Данные передаются между:

  • регистрами MMX,

  • регистром MMX и регистром основного процессора,

  • регистром MMX и памятью.

Если размер приемника меньше размера источника, то лишние разряды обнуляются.

Команда

Описание

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

MOVe Double word – переместить двойное слово (32 разряда).

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

MOVe Quarter word – переместить учетверенное слово (64 разряда).

      1. Упаковка данных

ММХ-команды упаковки преобразуют длинные элементы данных A6- и 32-разрядные слова) в более короткие. Если исходное значение «не помещается» в коротком элементе данных, то происходит «насыщение» — результатом считается граничное значение допустимого диапазона выходного типа данных.

Мнемоника

Описание

PACKSSWB

PACK with Signed Saturation Words to Bytes

Упаковка со знаковым насыщением слов приемника (регистра MMX) источника (память или регистр MMX) в байты, расположенные в приемнике (регистре MMX). Пример:

Слова приемника MM0 упаковываются в байты младшей части применика MM0.

Слова источника MM1 упаковываются в байты старшей части применика MM0.

PACKUSWB

PACK with Unigned Saturation Words to Bytes

Упаковка с беззнаковым насыщением знаковых слов приемника (регистра MMX) источника (память или регистр MMX) в байты без знака, расположенные в приемнике (регистре MMX).

Отрицательные числа преобразуются в нули.

PACKSSDW

PACK with Signed Saturation Double words to Words

Упаковка со знаковым насыщением двойных слов приемника (регистра MMX) и источника (память или регистр MMX) в слова, расположенные в приемнике (регистре MMX). Пример:

Двойные слова приемника MM1 упаковываются в байты младшей части применика MM1.

Двойные слова источника MM2 упаковываются в байты старшей части применика MM1.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]