24531904_j
24531904_j 24531904_j
FSTENV/FNSTENV—Store FPU Environment ( 続き ) 追加の Itanium ベース・システム環境例外 Itanium アーキテクチャ ・ レジスタ ・ フォルト Itanium アーキテクチャ ・ メモリ ・ フォル ト 保護モード例外 #GP(0) デステ ィ ネー シ ョ ンが書き込み不可能なセグメ ン ト にある 場合。 メモリ ・ オペランドの実効アドレスが CS、 DS、 ES、 FS、 または GS セグ メ ン ト の範囲外の場合。 DS、 ES、 FS、 または GS レジスタを使用してメモリがア クセスされ、 レジスタの内容が NULL セグメン ト ・ セレ クタであった場合。 #SS(0) メモリ ・ オペランドの実効アドレスが SS セグメン ト の範 囲外の場合。 #NM CR0 の EM または TS がセッ ト された場合。 #PF ( フォルト ・コード ) ペー ジ ・ フ ォ ル ト が発生した場合。 #AC(0) 現行特権レベルが 3 のときに、 アライメント ・チェックが イネーブルにされていて、 アライメントが合わないメモリ 参照が行われた場合。 実アドレス・モード例外 #GP メモリ ・ オペランドの実効アドレスが CS、 DS、 ES、 FS、 または GS セグ メ ン ト の範囲外の場合。 #SS メモリ ・ オペランドの実効アドレスが SS セグメン ト の範 囲外の場合。 #NM CR0 の EM または TS がセッ ト された場合。 仮想 8086 モード例外 浮動小数点レ ジ ス タ無効フ ォ ル ト (PSR.dfl が 1 の場合 )。 VHPT データ・ フォ ルト 、 ネスト さ れた TLB フォルト 、 データ TLB フォルト 、 代替データ TLB フォルト 、 データ・ ペー ジ 不在フ ォ ルト 、 デー タ NaT ペー ジ参照アボー ト 、 データ・キー・ミス・フォルト、データ・キー許可フォル ト 、 データ・ アク セス権フォ ルト 、 データ・ アク セス・ ビッ ト ・ フォルト 、 データ・ ダーティ ・ ビッ ト ・ フォルト 。 #GP(0) メモリ ・ オペランドの実効アドレスが CS、 DS、 ES、 FS、 または GS セグ メ ン ト の範囲外の場合。 #SS(0) メモリ ・ オペランドの実効アドレスが SS セグメン ト の範 囲外の場合。 #NM CR0 の EM または TS がセッ ト された場合。 #PF ( フォルト ・コード ) ペー ジ ・ フ ォ ル ト が発生した場合。 #AC(0) アライメン ト ・ チェ ッ クがイネーブルにされていて、 アラ イ メン ト が合わないメモ リ 参照が行われた場合。 3:544 第 3 巻 : IA-32 基本命令リファレンス
FSTSW/FNSTSW—Store Status Word オペコード 命令 説明 9B DD /7 FSTSW m2byte 未処理のマスクされていない浮動小数点例外の有無をチェックした 後、FPU ステータス・ワードを m2byte にストアする。 9B DF E0 FSTSW AX 未処理のマスクされていない浮動小数点例外の有無をチェックした 後、FPU ステータス・ワードを AX レジスタにストアする。 DD /7 FNSTSW m2byte 未処理のマスクされていない浮動小数点例外の有無をチェックしな いで、FPU ステータス・ワードを m2byte にストアする。 DF E0 FNSTSW AX 未処理のマスクされていない浮動小数点例外の有無をチェックしな いで、FPU ステータス・ワードを AX レジスタにストアする。 説明 FPU ステータス ・ ワー ドの現在値をデステ ィ ネーシ ョ ン ・ ロケーショ ンにス ト アする。 デステ ィ ネーシ ョ ン ・ オペラン ド には、 2 バイ ト のメモリ ・ ロケーシ ョ ンまたは AX レ ジスタを使用できる。 FSTSW 命令は、 未処理のマス ク されていない浮動小数点例外の有 無をチェ ッ クし、 例外を処理してから、 ステー タス ・ ワー ド をス ト アする。 FNSTSW 命 令は このチェ ッ ク を行わない。 この命令の FNSTSW AX 形式は、 主 と して分岐の方向が FPU 条件コ ー ド ・ フ ラ グの状態 に依存する条件付き分岐 ( 例えば、 FPU の比較命令、 あるいは FPREM、 FPREM1、 また は FXAM 命令の後 ) で使用される。 この命令は、 さらに割り込みを使用しない環境で、 ( 例外フ ラ グを調べ る こ と に よ っ て ) 例外ハン ド ラ を呼び出す場合に も 使用される。 FNSTSW AX 命令を実行す る と 、 プ ロセ ッ サは、 AX レ ジスタを更新してから その後の命 令を実行する。 したがって、 AX レジスタにストアされているステータスは、 その前の FPU 命令の実行結果か ら与え ら れた も のであ る こ と が保証 される。 操作 DEST ← FPUStatusWord; FPU 影響を受けるフラグ C0、 C1、 C2、 C3 フ ラ グは未定義。 浮動小数点例外 なし。 追加の Itanium ベース・システム環境例外 Itanium アーキテクチャ ・ レジスタ ・ フォルト Itanium アーキテクチャ ・ メモリ ・ フォル ト 浮動小数点レ ジ ス タ無効フ ォ ル ト (PSR.dfl が 1 の場合 )。 VHPT データ ・ フォル ト、 ネス ト された TLB フォルト、 データ TLB フォルト、 代替データTLB フォルト、 デー タ・ページ不在フォルト、 データNaT ページ参照アボー ト、 データ・キー・ ミス・フォルト、 データ・キー許可 フォルト、 データ・アクセス権フォルト、 データ・アクセ ス・ビット ・フォルト、 データ・ダーティ ・ビット ・フォ ルト。 第 3 巻 : IA-32 基本命令リファレンス 3:545
- Seite 506 und 507: FILD—Load Integer オペコード
- Seite 508 und 509: FINCSTP—Increment Stack-Top Point
- Seite 510 und 511: FIST/FISTP—Store Integer オペ
- Seite 512 und 513: FIST/FISTP—Store Integer ( 続き
- Seite 514 und 515: FLD—Load Real ( 続き ) 浮動
- Seite 516 und 517: FLD1/FLDL2T/FLDL2E/FLDPI/FLDLG2/FLD
- Seite 518 und 519: FLDCW—Load Control Word ( 続き
- Seite 520 und 521: FLDENV—Load FPU Environment ( 続
- Seite 522 und 523: FMUL/FMULP/FIMUL—Multiply ( 続
- Seite 524 und 525: FMUL/FMULP/FIMUL—Multiply ( 続
- Seite 526 und 527: FPATAN—Partial Arctangent オペ
- Seite 528 und 529: FPREM—Partial Remainder オペコ
- Seite 530 und 531: FPREM—Partial Remainder ( 続き
- Seite 532 und 533: FPREM1—Partial Remainder ( 続き
- Seite 534 und 535: FPTAN—Partial Tangent オペコ
- Seite 536 und 537: FRNDINT—Round to Integer オペ
- Seite 538 und 539: FRSTOR—Restore FPU State ( 続き
- Seite 540 und 541: FSAVE/FNSAVE—Store FPU State (
- Seite 542 und 543: FSCALE—Scale オペコード 命
- Seite 544 und 545: FSIN—Sine オペコード 命令
- Seite 546 und 547: FSINCOS—Sine and Cosine オペコ
- Seite 548 und 549: FSQRT—Square Root オペコード
- Seite 550 und 551: FST/FSTP—Store Real オペコー
- Seite 552 und 553: FST/FSTP—Store Real ( 続き ) #A
- Seite 554 und 555: FSTCW/FNSTCW—Store Control Word (
- Seite 558 und 559: FSTSW/FNSTSW—Store Status Word (
- Seite 560 und 561: FSUB/FSUBP/FISUB—Subtract ( 続
- Seite 562 und 563: FSUBR/FSUBRP/FISUBR—Reverse Subtr
- Seite 564 und 565: FSUBR/FSUBRP/FISUBR—Reverse Subtr
- Seite 566 und 567: FTST—TEST オペコード 命令
- Seite 568 und 569: FUCOM/FUCOMP/FUCOMPP—Unordered Co
- Seite 570 und 571: FWAIT—Wait 本章の 「WAIT」
- Seite 572 und 573: FXAM—Examine ( 続き ) 実アド
- Seite 574 und 575: FXCH—Exchange Register Contents (
- Seite 576 und 577: FXTRACT—Extract Exponent and Sign
- Seite 578 und 579: FYL2X—Compute y ∗ log 2 x ( 続
- Seite 580 und 581: FYL2XP1—Compute y ∗ log 2 (x +1
- Seite 582 und 583: IDIV—Signed Divide オペコー
- Seite 584 und 585: IDIV—Signed Divide ( 続き ) 実
- Seite 586 und 587: IMUL—Signed Multiply ( 続き ) 2
- Seite 588 und 589: IMUL—Signed Multiply ( 続き )
- Seite 590 und 591: IN—Input from Port ( 続き ) 操
- Seite 592 und 593: INC—Increment by 1 オペコー
- Seite 594 und 595: INS/INSB/INSW/INSD—Input from Por
- Seite 596 und 597: INS/INSB/INSW/INSD—Input from Por
- Seite 598 und 599: INT n/INTO/INT 3—Call to Interrup
- Seite 600 und 601: INT n/INTO/INT 3—Call to Interrup
- Seite 602 und 603: INT n/INTO/INT 3—Call to Interrup
- Seite 604 und 605: INT n/INTO/INT 3—Call to Interrup
FSTSW/FNSTSW—Store Status Word<br />
オペコード 命令 説明<br />
9B DD /7 FSTSW m2byte 未処理のマスクされていない浮動小数点例外の有無をチェックした<br />
後、FPU ステータス・ワードを m2byte にストアする。<br />
9B DF E0 FSTSW AX 未処理のマスクされていない浮動小数点例外の有無をチェックした<br />
後、FPU ステータス・ワードを AX レジスタにストアする。<br />
DD /7 FNSTSW m2byte 未処理のマスクされていない浮動小数点例外の有無をチェックしな<br />
いで、FPU ステータス・ワードを m2byte にストアする。<br />
DF E0 FNSTSW AX 未処理のマスクされていない浮動小数点例外の有無をチェックしな<br />
いで、FPU ステータス・ワードを AX レジスタにストアする。<br />
説明<br />
FPU ステータス ・ ワー ドの現在値をデステ ィ ネーシ ョ ン ・ ロケーショ ンにス ト アする。<br />
デステ ィ ネーシ ョ ン ・ オペラン ド には、 2 バイ ト のメモリ ・ ロケーシ ョ ンまたは AX レ<br />
ジスタを使用できる。 FSTSW 命令は、 未処理のマス ク されていない浮動小数点例外の有<br />
無をチェ ッ クし、 例外を処理してから、 ステー タス ・ ワー ド をス ト アする。 FNSTSW 命<br />
令は このチェ ッ ク を行わない。<br />
この命令の FNSTSW AX 形式は、 主 と して分岐の方向が FPU 条件コ ー ド ・ フ ラ グの状態<br />
に依存する条件付き分岐 ( 例えば、 FPU の比較命令、 あるいは FPREM、 FPREM1、 また<br />
は FXAM 命令の後 ) で使用される。 この命令は、 さらに割り込みを使用しない環境で、<br />
( 例外フ ラ グを調べ る こ と に よ っ て ) 例外ハン ド ラ を呼び出す場合に も 使用される。<br />
FNSTSW AX 命令を実行す る と 、 プ ロセ ッ サは、 AX レ ジスタを更新してから その後の命<br />
令を実行する。 したがって、 AX レジスタにストアされているステータスは、 その前の<br />
FPU 命令の実行結果か ら与え ら れた も のであ る こ と が保証 される。<br />
操作<br />
DEST ← FPUStatusWord;<br />
FPU 影響を受けるフラグ<br />
C0、 C1、 C2、 C3 フ ラ グは未定義。<br />
浮動小数点例外<br />
なし。<br />
追加の Itanium ベース・システム環境例外<br />
Itanium アーキテクチャ ・<br />
レジスタ ・ フォルト<br />
Itanium アーキテクチャ ・<br />
メモリ ・ フォル ト<br />
浮動小数点レ ジ ス タ無効フ ォ ル ト (PSR.dfl が 1 の場合 )。<br />
VHPT データ ・ フォル ト、 ネス ト された TLB フォルト、<br />
データ TLB フォルト、 代替データTLB フォルト、 デー<br />
タ・ページ不在フォルト、 データNaT ページ参照アボー<br />
ト、 データ・キー・ ミス・フォルト、 データ・キー許可<br />
フォルト、 データ・アクセス権フォルト、 データ・アクセ<br />
ス・ビット ・フォルト、 データ・ダーティ ・ビット ・フォ<br />
ルト。<br />
第 3 巻 : IA-32 基本命令リファレンス 3:545