• 検索結果がありません。

IA-32

アーキテクチャは、

SIMD

演算に使用される、一連の

64

ビットおよび

128

ビッ ト・パックド・データ型を定義しており、それらのデータ型を操作する。これらの データ型は、基本データ型(パックドバイト、パックドワード、パックド・ダブル ワード、パックド・クワッドワード)と基本データ型の数値表現で構成され、パック ド整数演算およびパックド浮動小数点演算に使用される。

4.6.1. 64

ビット・パックド

SIMD

データ型

64

ビット・パックド

SIMD

データ型は、インテル

MMX

テクノロジで

IA-32

アーキテ クチャに導入された。これらのデータ型は、

MMX

テクノロジ・レジスタ内で操作さ れる。

64

ビット・パックド基本データ型は、パックドバイト、パックドワード、パッ クド・ダブルワードである(図

4-6.

を参照)。これらのデータ型の数値

SIMD

演算を実 行する場合、これらのデータ型は、バイト整数、ワード整数、またはダブルワード整 数の値を含むものとして解釈される。

図4-5. ビット・フィールド・データ型

ビット・フィールド

フィールド長

最下位ビット

データ型

4

4.6.2. 128

ビット・パックド

SIMD

データ型

128

ビット・パックドSIMDデータ型は、

SSE

IA-32

アーキテクチャに導入され、

SSE2

SSE3

で使用された。これらのデータ型は、主に

128

ビット

XMM

レジスタとメモリ 内で操作される。

128

ビット・パックド基本データ型は、パックドバイト、パックド ワード、パックド・ダブルワード、およびパックド・クワッドワードである(図

4-7.

を参照)。

XMM

レジスタ内でこれらの基本データ型の

SIMD

演算を実行する場合、こ れらのデータ型は、パックドまたはスカラ形式の単精度浮動小数点値または倍精度浮 動小数点値を含むものとして解釈されるか、パックドバイト整数、パックドワード整 数、パックド・ダブルワード整数、またはパックド・クワッドワード整数の値を含む ものとして解釈される。

図4-6. 64ビット・パックドSIMDデータ型 パックドワード

パックドバイト

パックド・ダブルワード 63 0

63 0

0 63

パックドワード整数 パックドバイト整数

パックド・ダブルワード整数 63 0

63 0

0 63

64ビット・パックドSIMD基本データ型

64ビット・パックド整数データ型

IA-32 インテル® アーキテクチャ・ソフトウェア・デベロッパーズ・マニュアル 上巻:基本アーキテクチャ

4-12

図4-7. 128ビット・パックドSIMDデータ型 0 127

パックドワード パックドバイト

パックド・ダブルワード 128ビット・パックドSIMD基本データ型

128ビット・パックド浮動小数点データ型および整数データ型

パックド・クワッドワード

0 127

0 127

0 127

0 127

0 127

0 127

0 127

0 127

0 127

パックド単精度浮動小数点

パックド倍精度浮動小数点

パックド・クワッドワード整数 パックド・ダブルワード整数 パックドワード整数 パックドバイト整数

データ型

4