インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス
マスク値に応じて、1 つ目のオペランドの連続する/連続していないビットを、デスティネーションの連続する下位ビットに転送します。対応するインテル® AVX2 命令は PEXT です。
extern unsigned int _pext_u32(unsigned int source, unsigned int mask); |
extern unsigned __int64 _pext_u64(unsigned __int64 s1, unsigned __int64 mask); |
source |
ビットの転送元であるソースオペランド |
mask |
ビットの転送を指定するマスク値 |
2 つ目のソースオペランドのマスク値を使用して、1 つ目のオペランドの連続する/連続していないビットを、デスティネーションの連続する下位ビットに転送します。マスクでセットされているビットごとに、1 つ目のソースオペランドの対応するビットを抽出し、デスティネーションの連続する下位ビットに書き込みます。デスティネーションの残りの上位ビットは 0 に設定されます。
操作の結果。