Assembleur 80x86 | PACKUSDW |
---|---|
SSE4.1 | Pack with Unsigned Saturation |
Syntaxe
PACKUSDW dest,source |
Description
Cette instruction permet de compacté 8 paquets de double mots naturel en mots naturel.
Algorithme
SI dest(31..0) < 0 ALORS TMP(15..0) ← 0 SINON TMP(15..0) ← dest(15..0) FIN SI SI dest(31..0) > FFFFh ALORS dest(15..0) ← FFFFh SINON dest(15..0) ← TMP(15..0) FIN SI SI dest(63..32) < 0 ALORS TMP(31..16) ← 0 SINON TMP(31..16) ← dest(47..32) FIN SI SI dest(63..32) > FFFFh ALORS dest(31..16) ← FFFFh SINON dest(31..16) ← TMP(31..16) FIN SI SI dest(95..64) < 0 ALORS TMP(47..32) ← 0 SINON TMP(47..32) ← dest(79..64) FIN SI SI dest(95..64) > FFFFh ALORS dest(47..32) ← FFFFh SINON dest(47..32) ← TMP(47..32) FIN SI SI dest(127..96) < 0 ALORS TMP(63..48) ← 0 SINON dest(111..96) FIN SI SI dest(127..96) > FFFFh ALORS dest(63..48) ← FFFFh SINON dest(63..48) ← TMP(63..48) FIN SI SI dest(127..96) < 0 ALORS TMP(63..48) ← 0 SINON dest(111..96) FIN SI SI dest(127..96) > FFFFh ALORS dest(63..48) ← FFFFh SINON dest(63..48) ← TMP(63..48) FIN SI SI source(31..0) < 0 ALORS TMP(79..64) ← 0 SINON TMP(79..64) ← source(15..0) FIN SI SI source(31..0) > FFFFh ALORS dest(63..48) ← FFFFH SINON dest(63..48) ← TMP(79..64) FIN SI SI source(63..32) < 0 ALORS TMP(95..80) ← 0 SINON source(47..32) FIN SI SI source(63..32) > FFFFh ALORS dest(95..80) ← FFFFh SINON dest(95..80) TMP(95..80) FIN SI SI source(95..64) < 0 ALORS TMP(111..96) ← 0 SINON TMP(111..96) ← source(79..64) FIN SI SI source(95..64) > FFFFh ALORS dest(111..96) ← FFFFh SINON dest(111..96) ← TMP(111..96) FIN SI SI source(127..96) < 0 ALORS TMP(127..112) ← 0 SINON TMP(127..112) ← source(111..96) FIN SI SI source(127..96) > FFFFh ALORS dest(128..112) ← FFFFh SINON dest(128..112) ← TMP(127..112) FIN SI |
Mnémonique
Instruction | Opcode | Description |
---|---|---|
PACKUSDW xmm1,xmm2/m128 | 66h 0Fh 38h 2Bh /r | Cette instruction permet de compacté 8 paquets de double mots naturel en mots naturel. |
Références
Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 2B: Instruction Set Reference, N-Z, Edition Intel, Mars 2010, Publication No. 253667-034US, page 42 à 44.
Dernière mise à jour : Samedi, le 20 septembre 2014