mpcmpeqb.gml
来自「开放源码的编译器open watcom 1.6.0版的源代码」· GML 代码 · 共 52 行
GML
52 行
.func _m_pcmpeqb
#include <mmintrin.h>
__m64 _m_pcmpeqb(__m64 *m1, __m64 *m2);
.funcend
.desc begin
If the respective bytes of
.arg m1
are equal to the respective bytes of
.arg m2,
the respective bytes of the result are set to all ones, otherwise they
are set to all zeros.
.desc end
.return begin
The result of comparing the packed bytes of two 64-bit multimedia
values is returned as a sequence of bytes (0xff for equal, 0x00 for
not equal).
.return end
.see begin
.im seemmcmp &function.
.see end
.exmp begin
#include <stdio.h>
#include <mmintrin.h>
#define AS_BYTES "%2.2x %2.2x %2.2x %2.2x " \
"%2.2x %2.2x %2.2x %2.2x"
.exmp break
__m64 a;
__m64 b = { 0x0004000300020001 };
__m64 c = { 0xff7fff800080007f };
void main()
{
a = _m_pcmpeqb( b, c );
printf( "m1="AS_BYTES"\n"
"m2="AS_BYTES"\n"
"mm="AS_BYTES"\n",
b._8[7], b._8[6], b._8[5], b._8[4],
b._8[3], b._8[2], b._8[1], b._8[0],
c._8[7], c._8[6], c._8[5], c._8[4],
c._8[3], c._8[2], c._8[1], c._8[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] );
}
.exmp output
m1=00 04 00 03 00 02 00 01
m2=ff 7f ff 80 00 80 00 7f
mm=00 00 00 00 ff 00 ff 00
.exmp end
.class Intel
.system
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?