整数データのビット操作の組込み関数
- _bextr_u32/64
2 つ目のソースオペランドで指定されるインデックス値と長さを使用して、1 つ目のオペランドの連続するビットをデスティネーションに抽出します。対応するインテル® AVX2 命令は BEXTR です。
- _blsi_u32/64
ソースオペランドからセットされている最下位のビットを抽出し、デスティネーションの対応するビットをセットします。対応するインテル® AVX2 命令は BLSI です。
- _blsmsk_u32/64
デスティネーションの最下位ビットから、ソースオペランドで 1 に設定されている最下位のビットまでのすべてのビットを 1 に設定します。対応するインテル® AVX2 命令は BLSMSK です。
- _blsr_u32/64
ソースオペランドのすべてのビットをデスティネーションにコピーし、ソースオペランドで 1 に設定されている最下位のビットに対応するデスティネーションのビットを 0 にリセットします。対応するインテル® AVX2 命令は BLSR です。
- _bzhi_u32/64
2 つ目のソースオペランドによって指定されたインデックス値に応じて、1 つ目のソースオペランドのビットをデスティネーションにコピーし、デスティネーションの上位ビットをクリアします。対応するインテル® AVX2 命令は BZHI です。
- _pext_u32/64
マスク値に応じて、1 つ目のオペランドの連続する/連続していないビットを、デスティネーションの連続する下位ビットに転送します。対応するインテル® AVX2 命令は PEXT です。
- _pdep_u32/64
2 つ目のソースベクトルにあるマスクに応じて、1 つ目のオペランドの連続する下位ビットをデスティネーションに転送/分散 (Scatter) します。対応するインテル® AVX2 命令は PDEP です。
- _lzcnt_u32/64
ソースオペランドの先頭からのゼロ・ビットの数をカウントします。 ソースオペランドが 0 の場合は、オペランドのサイズを返します。 対応するインテル® AVX2 命令は LZCNT です。
- _tzcnt_u32/64
ソースオペランドの最後 (最下位ビット) からのゼロ・ビットの数をカウントし、結果を返します。ソースオペランドが 0 の場合、ソースオペランドのサイズ (ビット数) が返されます。対応するインテル® AVX2 命令は TZCNT です。