XMM-команды распаковки попарно объединяют элементы данных из обоих операндов в более длинные элементы выходного операнда. Этими командами можно пользоваться для увеличения числа значащих разрядов при вычислениях.
| Мнемоника | Описание |
| UNPCKHPS | UNPaCK High Packed Single precision float point data
Параллельное перемещение старших двойных слов из операнда-источника и операнда-приемника в операнд-приемник.Пример:
|
| UNPCKLPS | UNPaCK Low Packed Single precision float point data
Параллельное перемещение младших двойных слов из операнда-источника и операнда-приемника в операнд-приемник. Пример:
|
| SHUFPS | UNPaCK Low Packed Single precision float point data
Параллельная перестановка 32-разрядных упакованных операндов в соответствии с заданной маской. Команда имеет три операнда: входной, выходной и операнд-маску.
Маска представляет собой непосредственное 8-разрядное значение, задающее порядок перестановки операндов. Каждая пара битов маски определяет номер упакованного 32-разрядного операнда в приемнике или источнике, который должен помещаться в операнд-приемник. При этом порядок размещения 32-разрядных операндов таков: младшие 4 бита маски указывают номера двух упакованных чисел приемника, которые становятся младшими упакованными значениями результата, а старшие 4 бита — номера упакованных чисел источника, которые становятся старшими упакованными значениями результата. Пример:
|






