24531904_j

24531904_j 24531904_j

16.02.2013 Aufrufe

4.5.2 分岐予測と nop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:325 4.5.3 その他の B ユニット命令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:327 4.6 F ユニット命令エンコーディング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:328 4.6.1 算術演算 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:330 4.6.2 並列浮動小数点 Select . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:331 4.6.3 比較と分類 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:331 4.6.4 近似 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:333 4.6.5 最小値 / 最大値と並列比較 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:334 4.6.6 マージと論理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:335 4.6.7 変換 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:335 4.6.8 ステータス・フィールド操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:336 4.6.9 その他の F ユニット命令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:337 4.7 X ユニット命令エンコーディング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:337 4.7.1 その他の X ユニット命令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:337 4.7.2 4.7.3 ロング型即値 64 移動 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:339 ロング型分岐 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:339 4.7.4 Nop/Hint (X ユニット ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:340 4.8 即値の生成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:341 5 リソースと依存関係のセマンティックス. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:343 5.1 リソースの読み込みおよび書き込み . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:343 5.2 依存関係とシリアル化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:343 5.3 リソースと依存関係の表の形式についての注意事項 . . . . . . . . . . . . . . . . . . . . . . . 3:344 5.3.1 特別なケースの命令規則 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:346 5.3.2 RAW の依存関係表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:346 5.3.3 WAW の依存関係表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:354 5.3.4 WAR の依存関係表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:358 5.3.5 依存関係表で参照される規則のリスト . . . . . . . . . . . . . . . . . . . . . . . . . 3:359 5.4 サポートに関する表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:361 第 II 部 : IA-32 命令セットの説明 1 IA-32 基本命令リファレンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:371 1.1 追加のインテル ® Itanium ® アーキテクチャ・フォルト . . . . . . . . . . . . . . . . . . . . . 3:371 1.2 IA-32 命令リファレンス・ページの読み方 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:372 1.2.1 IA-32 命令フォーマット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:372 1.2.2 操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:375 1.2.3 影響を受けるフラグ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:378 1.2.4 影響を受ける FPU フラグ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:378 1.2.5 保護モード例外 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:379 1.2.6 実アドレス・モード例外 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:379 1.2.7 仮想 8086 モード例外 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:380 1.2.8 浮動小数点例外 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:380 1.3 IA-32 基本命令リファレンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:380 2 IA-32 MMX ® テクノロジ命令リファレンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:781 3 IA-32 ストリーミング SIMD 拡張命令リファレンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:847 3.1 IA-32 ストリーミング SIMD 拡張命令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:847 3.2 インテル ® アーキテクチャのストリーミング SIMD 拡張命令について . . . . . . . . 3:847 3.3 SIMD (Single Instruction, Multiple Data) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:848 3.4 新しいデータ・タイプ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:848 3.5 ストリーミング SIMD 拡張命令レジスタ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:849 iv

3.6 拡張された命令セット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3:849 3.6.1 命令グループの概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3:850 3.7 IEEE 規格への適合性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3:857 3.7.1 実数体系 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3:858 3.7.2 NaN の操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3:862 3.8 データ・フォーマット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3:864 3.8.1 メモリのデータ・フォーマット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3:864 3.8.2 ストリーミング SIMD 拡張命令レジスタのデータ・フォーマット . . . .3:864 3.9 命令フォーマット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3:865 3.10 命令プリフィックス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3:866 3.11 予約済みの動作とソフトウェアの互換性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3:867 3.12 表記法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3:867 3.13 SIMD 整数拡張命令セット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3:977 3.14 キャッシュ制御命令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3:999 v

4.5.2 分岐予測と nop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:325<br />

4.5.3 その他の B ユニット命令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:327<br />

4.6 F ユニット命令エンコーディング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:328<br />

4.6.1 算術演算 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:330<br />

4.6.2 並列浮動小数点 Select . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:331<br />

4.6.3 比較と分類 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:331<br />

4.6.4 近似 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:333<br />

4.6.5 最小値 / 最大値と並列比較 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:334<br />

4.6.6 マージと論理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:335<br />

4.6.7 変換 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:335<br />

4.6.8 ステータス・フィールド操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:336<br />

4.6.9 その他の F ユニット命令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:337<br />

4.7 X ユニット命令エンコーディング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:337<br />

4.7.1 その他の X ユニット命令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:337<br />

4.7.2<br />

4.7.3<br />

ロング型即値 64 移動 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:339<br />

ロング型分岐 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:339<br />

4.7.4 Nop/Hint (X ユニット ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:340<br />

4.8 即値の生成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:341<br />

5 リソースと依存関係のセマンティックス. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:343<br />

5.1 リソースの読み込みおよび書き込み . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:343<br />

5.2 依存関係とシリアル化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:343<br />

5.3 リソースと依存関係の表の形式についての注意事項 . . . . . . . . . . . . . . . . . . . . . . . 3:344<br />

5.3.1 特別なケースの命令規則 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:346<br />

5.3.2 RAW の依存関係表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:346<br />

5.3.3 WAW の依存関係表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:354<br />

5.3.4 WAR の依存関係表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:358<br />

5.3.5 依存関係表で参照される規則のリスト . . . . . . . . . . . . . . . . . . . . . . . . . 3:359<br />

5.4 サポートに関する表 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:361<br />

第 II 部 : IA-32 命令セットの説明<br />

1 IA-32 基本命令リファレンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:371<br />

1.1 追加のインテル ® Itanium ® アーキテクチャ・フォルト . . . . . . . . . . . . . . . . . . . . . 3:371<br />

1.2 IA-32 命令リファレンス・ページの読み方 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:372<br />

1.2.1 IA-32 命令フォーマット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:372<br />

1.2.2 操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:375<br />

1.2.3 影響を受けるフラグ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:378<br />

1.2.4 影響を受ける FPU フラグ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:378<br />

1.2.5 保護モード例外 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:379<br />

1.2.6 実アドレス・モード例外 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:379<br />

1.2.7 仮想 8086 モード例外 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:380<br />

1.2.8 浮動小数点例外 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:380<br />

1.3 IA-32 基本命令リファレンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:380<br />

2 IA-32 MMX ® テクノロジ命令リファレンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:781<br />

3 IA-32 ストリーミング SIMD 拡張命令リファレンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:847<br />

3.1 IA-32 ストリーミング SIMD 拡張命令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:847<br />

3.2 インテル ® アーキテクチャのストリーミング SIMD 拡張命令について . . . . . . . . 3:847<br />

3.3 SIMD (Single Instruction, Multiple Data) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:848<br />

3.4 新しいデータ・タイプ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:848<br />

3.5 ストリーミング SIMD 拡張命令レジスタ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3:849<br />

iv

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!