1) movaps приёмник, источник – переслать выравненные упакованные числа. Копирует 128 бит из источника в приёмник. Каждый из аргументов может быть регистром SSE, или 128-битной переменной. Например: movaps XMM1, XMM2; или movaps XMM1, y, где y – переменная. Если адрес переменной некратен 16 байтам, программа вылетает. Предупреждение: во всех командах расширения SSE, кроме movups 16-байтные операнды из памяти должны быть выровнены по 16-байтным границам!
2) movups приёмник, источник – переслать невыравненные упакованные числа. Отличие в том, что если адрес некратен 16 байтам, команда выполняется нормально. Если можно достичь выравнивания, то лучше пользоваться командой movaps, так как она быстрее
3) movhps приёмник, источник – переслать старшие упакованные числа. Копирует старшие 64 бита из источника в приёмник. Младшие 64 бита приёмника не изменяются. Приёмник и источник могут быть переменной или регистром SSE
4) movlps приёмник, источник – переслать младшие упакованные числа (аналогично)
5) movhlps приёмник, источник – пере-слать старшие упакованные числа в младшие. Копирует старшие 64 бита источника в младшие 64 бита приёмника. Старшие 64 бита приёмника не меняются. Источник и приёмник – регистры SSE |
|
6) movlhps приёмник, источник – пере-слать младшие упакованные числа в стар-шие. Источник и приёмник могут быть только регистрами SSE |