2

MMX レジスタを使用して 16 ビット ワードから 32 ビット ワードに符号拡張する方法を知っている人はいますか? MMX レジスタに格納されている 2 つの 16 ビット ワードから 2 つの 32 ビット符号拡張ワードを取得したいと考えています。SSE4 命令は許可されていません。

よろしく

4

1 に答える 1

5

左シフト(PSLLD)に続いて算術右シフト(PSRAD)を実行できます。たとえば、組み込み関数を使用します。

v = _mm_srai_pi32(_mm_slli_pi32(v, 16), 16);

(これは、各32ビットワードの下半分にすでに16ビット値があることを前提としています。)

于 2011-07-27T15:59:44.780 に答える