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

_mm256_srai_epi16/32

ワード/ダブルワード要素に対して指定したカウント値分だけ右へ算術シフトを実行します。対応するインテル® AVX2 命令は VPSRAW または VPSRAD です。

構文

extern __m256i _mm256_srai_epi16(__m256i s1, const int count);

extern __m256i _mm256_srai_epi32(__m256i s1, const int count);

引数

s1

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

count

演算に使用する 8 ビットの即値

説明

128 ビット・ソースベクトル s1 の各要素 (16 ビットのワードまたは 32 ビットのダブルワード) に対して、count で指定したカウント値分だけ右へ算術シフトを実行します。空の上位ビットは、符号ビットの初期値に設定されます。count の値が 15 または 31 よりも大きい場合、デスティネーション・ベクトル全体が符号ビットの初期値に設定されます。count 引数は 8 ビットの即値です。

戻り値

右シフト演算の結果。