117
63 5Ó 55 48 47 40 39 32 31 24 23 16 15 8 7 0
Byte / Byle 6 I Byle b Byle A Byle 3 Byte 2 Byle 1 Byte 0
A A
Wynik operacji umieszczany jest w rejestrze MMX określonym przez operand_2. Instrukcja traktuje lokalizację podaną przez operund l jako zestaw czterech 16-hiiowych słów ze znakiem. Tak samo interpretowany jest drugi z argumentów.
Dla każdego ze stojących w ten sposób do dyspozycji ośmiu 16-bitowych słów wykonywana jest następująca operacja:
• Jeżeli wartość słowa (z uwzględnieniem znaku) wypada poza zakres 0 -255 (przyjęty dla typu signed byle) uznaje się wartość graniczną zakresu.
Tak więc wynikiem jest 0x00 jeśli poniżej a 0xff jeśli powyżej zakresu.
• Dla słów, których wartości mieszczą się w zakresie 0 255 przepisuje się
po prostu młodszy bajt
operandj operand_2
\ \ \ f* / /
operand 2
Powyższy rozkaz, dokonuje więc isloinie spakowania danych zawartych w ośmiu słowach 16-biiowych (razem 128 bitów) do kontenera o rozmiarze 64 bity.
p
ADD
SW
PADDSW
nperand_2
operar.d_l
rozkaz dotyczy danych spakowanych instrukcja dodaw ania
operuje na słowach z uwzględnieniem znaku
operand_2 , operand_l
jesl jednym z rejestrów MMX (mmO - mm7)
jest adresem 64 bitowego obszaru w pamięci lub rejestrem MMX