インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

_mm256_srl_epi16/32/64

ワード/ダブルワード/クワッドワード要素に対して指定したビット数分だけ右へ論理シフトを実行します。対応するインテル® AVX2 命令は VPSRLWVPSRLD、または VPSRLQ です。

構文

extern __m256i _mm256_srl_epi16(__m256i s1, __m128i count);

extern __m256i _mm256_srl_epi32(__m256i s1, __m128i count);

extern __m256i _mm256_srl_epi64(__m256i s1, __m128i count);

引数

s1

演算に使用する整数ソースベクトル

count

演算に使用する 128 ビットのメモリー位置

説明

ソースベクトル s1 の各データ要素 (16 ビットのワード、32 ビットのダブルワード、または 64 ビットのクワッドワード) に対して、count で指定されているビット数分だけ右へ論理シフトを実行します。空になった下位のビットはクリア (すべて '0' に設定) されます。count の値が (使用する組込み関数に応じて) 15/31/63 よりも大きい場合、デスティネーション・ベクトルはすべて '0' に設定されます。

count 引数は 128 ビットのメモリー位置です。128 ビットの下位 64 ビットのみ確認され、使用されます。

戻り値

右シフト演算の結果。