MMX® テクノロジのシフト組込み関数

MMX® テクノロジの組込み関数のプロトタイプは、ヘッダ・ファイルmmintrin.h内にあります。

組込み関数名 別名 シフトの方向 シフトの種類 対応する
命令
_m_psllw _mm_sll_pi16 論理 PSLLW
_m_psllwi _mm_slli_pi16 論理 PSLLWI
_m_pslld _mm_sll_pi32 論理 PSLLD
_m_pslldi _mm_slli_pi32 論理 PSLLDI
_m_psllq _mm_sll_si64 論理 PSLLQ
_m_psllqi _mm_slli_si64 論理 PSLLQI
_m_psraw _mm_sra_pi16 算術 PSRAW
_m_psrawi _mm_srai_pi16 算術 PSRAWI
_m_psrad _mm_sra_pi32 算術 PSRAD
_m_psradi _mm_srai_pi32 算術 PSRADI
_m_psrlw _mm_srl_pi16 論理 PSRLW
_m_psrlwi _mm_srli_pi16 論理 PSRLWI
_m_psrld _mm_srl_pi32 論理 PSRLD
_m_psrldi _mm_srli_pi32 論理 PSRLDI
_m_psrlq _mm_srl_si64 論理 PSRLQ
_m_psrlqi _mm_srli_si64 論理 PSRLQI
 
__m64 _m_psllw(__m64 m, __m64 count)

mの4つの16ビット値を、countで指定した値だけ左にシフトし、下位ビットを0で埋めます。

__m64 _m_psllwi(__m64 m, int count)

mの4つの16ビット値を、countで指定した値だけ左にシフトし、下位ビットを0で埋めます。パフォーマンス上の理由で、countは定数にしてください。

__m64 _m_pslld(__m64 m, __m64 count)

mの2つの32ビット値を、countで指定した値だけ左にシフトし、下位ビットを0で埋めます。

__m64 _m_pslldi(__m64 m, int count)

mの2つの32ビット値を、countで指定した値だけ左にシフトし、下位ビットを0で埋めます。パフォーマンス上の理由で、countは定数にしてください。

__m64 _m_psllq(__m64 m, __m64 count)

mの64ビット値を、countで指定した値だけ左にシフトし、下位ビットを0で埋めます。

__m64 _m_psllqi(__m64 m, int count)

mの64ビット値を、countで指定した値だけ左にシフトし、下位ビットを0で埋めます。パフォーマンス上の理由で、countは定数にしてください。

__m64 _m_psraw(__m64 m, __m64 count)

mの4つの16ビット値を、countで指定した値だけ右にシフトし、上位ビットを符号ビットで埋めます。

__m64 _m_psrawi(__m64 m, int count)

mの4つの16ビット値を、countで指定した値だけ右にシフトし、上位ビットを符号ビットで埋めます。パフォーマンス上の理由で、countは定数にしてください。

__m64 _m_psrad(__m64 m, __m64 count)

mの2つの32ビット値を、countで指定した値だけ右にシフトし、上位ビットを符号ビットで埋めます。

__m64 _m_psradi(__m64 m, int count)

mの2つの32ビット値を、countで指定した値だけ右にシフトし、上位ビットを符号ビットで埋めます。パフォーマンス上の理由で、countは定数にしてください。

__m64 _m_psrlw(__m64 m, __m64 count)

mの4つの16ビット値を、countで指定した値だけ右にシフトし、上位ビットを0で埋めます。

__m64 _m_psrlwi(__m64 m, int count)

mの4つの16ビット値を、countで指定した値だけ右にシフトし、上位ビットを0で埋めます。パフォーマンス上の理由で、countは定数にしてください。

__m64 _m_psrld(__m64 m, __m64 count)

mの2つの32ビット値を、countで指定した値だけ右にシフトし、上位ビットを0で埋めます。

__m64 _m_psrldi (__m64 m, int count)

mの2つの32ビット値を、countで指定した値だけ右にシフトし、上位ビットを0で埋めます。パフォーマンス上の理由で、countは定数にしてください。

__m64 _m_psrlq(__m64 m, __m64 count)

mの64ビット値を、countで指定した値だけ右にシフトし、上位ビットを0で埋めます。

__m64 _m_psrlqi (__m64 m, int count)

mの64ビット値を、countで指定した値だけ右にシフトし、上位ビットを0で埋めます。パフォーマンス上の理由で、countは定数にしてください。