#include #include #define AS_BYTES "%2.2x %2.2x %2.2x %2.2x " \ "%2.2x %2.2x %2.2x %2.2x" #define AS_WORDS "%4.4x %4.4x %4.4x %4.4x" #define AS_DWORDS "%8.8lx %8.8lx" __m64 a; __m64 b = { 0x0004000300020001 }; __m64 c = { 0xff7fff800080007f }; void main() { a = _m_packuswb( b, c ); printf( "m2="AS_WORDS" " "m1="AS_WORDS"\n" "mm="AS_BYTES"\n", c._16[3], c._16[2], c._16[1], c._16[0], b._16[3], b._16[2], b._16[1], b._16[0], a._8[7], a._8[6], a._8[5], a._8[4], a._8[3], a._8[2], a._8[1], a._8[0] ); }