Разделы:
Best links:
Система команд sse-расширения
Набор SSE-расширения включает 70 команд. Их подробное описание можно найти в фирменном руководстве Intel. Арифметические команды могут выполняться в двух контекстах: скалярном и параллельном. Параллельные арифметические операции обрабатывают одновременно 4 двойных слова и имеют в своей мнемонике суффикс ps, а скалярные - обрабатывают только младшие 32-разрядные двойные слова упакованных операндов, не затрагивая при этом три старших двойных слова. Исключение составляют некоторые команды скалярной пересылки данных. Мнемоническое обозначение этих команд включает суффикс ss.
Набор команд SSE-расширения можно разделить на пять групп: команды передачи данных, арифметические команды, логические команды, команды преобразования и специальные команды.
Команды передачи данных.
Включают восемь команд, позволяющих выполнять операции над 128-, 64- и 32-разрядными операндами.
Команды movaps (movups) - пересылка выровненных (невыровненных) по 16-байтовой границе 128-разрядных операндов. В качестве входного операнда могут выступать ХММ-регистр или 128-разрядная ячейка памяти, выходным операндом может служить один из ХММ-регистров. Если адрес ячейки памяти не будет выровнен по 16-байтовой границе, то по команде movaps произойдет исключение общей защиты.
Команда movhps - пересылка невыровненных 64 бит из входного операнда в выходной. Один из операндов обязательно должен быть ХММ-регистром, в качестве второго может выступать 64-разрядная ячейка памяти. Пересылаются только старшие 64 бит входных операндов. Младшие 64 бит обоих операндов не изменяются. Если данные передаются из ХММ-регистра, то пересылке подлежат только старшие 64 бит. Команда не требует выравнивания по 16-байтовой границе адреса ячейки памяти.
предыдущаяследующая© Copyright, 2009.
Для связи: info@dgs-srl.com.