24531904_j

24531904_j 24531904_j

16.02.2013 Aufrufe

ENTER—Make Stack Frame for Procedure Parameters ( 続き ) 追加の Itanium ベース・システム環境例外 Itanium アーキテクチャ ・ レジスタ ・ フォルト Itanium アーキテクチャ ・ メモリ ・ フォル ト 保護モード例外 #SS(0) SP または ESP レジスタの新しい値がスタック ・セグメン ト の範囲外の場合。 #PF ( フォルト ・コード ) ペー ジ ・ フ ォ ル ト が発生した場合。 実アドレス・モード例外 なし。 仮想 8086 モード例外 なし。 NaT レ ジ ス タ参照アボ ー ト 。 VHPT データ ・ フォル ト、 ネス ト された TLB フォルト、 データ TLB フォルト、 代替データTLB フォルト、 デー タ・ページ不在フォルト、 データNaT ページ参照アボー ト、 データ・キー・ ミス・フォルト、 データ・キー許可 フォルト、 データ・アクセス権フォルト、 データ・アクセ ス・ビット ・フォルト、 データ・ダーティ ・ビット ・フォ ルト。 3:456 第 3 巻 : IA-32 基本命令リファレンス

F2XM1—Compute 2 x -1 オペコード 命令 説明 D9 F0 F2XM1 ST(0) を (2 ST(0) - 1) で置き換える。 説明 2 の ソ ー ス ・ オペラ ン ド 乗 と い う 指数値か ら 1 を引いた値を計算する。 ソース ・ オペラ ンドはST(0) レジスタにあり、 結果も ST(0) にス ト アされる。 ソース ・ オペランドの値 は -1.0 から +1.0 までの範囲でなければならない。 ソ ース値がこの範囲外の場合は、 結果 は未定義になる。 以下の表に、 オーバフローもアンダフローも発生しないものとして、 さまざまなクラス の数の指数値を計算した と き に得られる結果を示す。 ST(0) SRC ST(0) DEST -1.0 to −0 −0.5 ~ −0 −0 −0 +0 +0 +0 to +1.0 +0 ~ 1.0 2 以外の値の累乗は、 以下の式を使用して計算する。 x y = 2 (y ∗ log 2 x) 操作 ST(0) ← (2 ST(0) − 1); FPU 影響を受けるフラグ C1 ス タ ッ ク ・ アンダ フ ロ ーが発生した場合は 0 にセッ ト され る。 不正確結果例外 (#P) が発生した場合は、 丸めの方向を示 す。 0 = 切り上げなし、 1 = 切り上げ。 C0、 C2、 C3 未定義。 追加の Itanium ベース・システム環境例外 Itanium アーキテクチャ ・ レジスタ ・ フォルト 浮動小数点レ ジ ス タ無効フ ォ ル ト (PSR.dfl が 1 の場合 )、 NaT レ ジ ス タ参照アボ ー ト 。 浮動小数点例外 #IS ス タ ッ ク ・ アンダ フ ロ ーが発生した場合。 #IA ソース・オペランドがSNaN 値であるか、 ま たはその フォーマットがサポートされていない場合。 #D 結果がデ ノ ーマル値である場合。 #U 結果が小さすぎて、 デスティネーション・フォーマットで 表現で き ない場合。 #P 値がデステ ィ ネ ーシ ョ ン ・ フ ォ ーマ ッ ト では正確に表現で きない場合。 第 3 巻 : IA-32 基本命令リファレンス 3:457

F2XM1—Compute 2 x -1<br />

オペコード 命令 説明<br />

D9 F0 F2XM1 ST(0) を (2 ST(0) - 1) で置き換える。<br />

説明<br />

2 の ソ ー ス ・ オペラ ン ド 乗 と い う 指数値か ら 1 を引いた値を計算する。 ソース ・ オペラ<br />

ンドはST(0) レジスタにあり、 結果も ST(0) にス ト アされる。 ソース ・ オペランドの値 は -1.0 から +1.0 までの範囲でなければならない。 ソ ース値がこの範囲外の場合は、 結果<br />

は未定義になる。<br />

以下の表に、 オーバフローもアンダフローも発生しないものとして、 さまざまなクラス<br />

の数の指数値を計算した と き に得られる結果を示す。<br />

ST(0) SRC ST(0) DEST<br />

-1.0 to −0 −0.5 ~ −0<br />

−0 −0<br />

+0 +0<br />

+0 to +1.0 +0 ~ 1.0<br />

2 以外の値の累乗は、 以下の式を使用して計算する。<br />

x y = 2 (y ∗ log 2 x)<br />

操作<br />

ST(0) ← (2 ST(0) − 1);<br />

FPU 影響を受けるフラグ<br />

C1 ス タ ッ ク ・ アンダ フ ロ ーが発生した場合は 0 にセッ ト され<br />

る。<br />

不正確結果例外 (#P) が発生した場合は、 丸めの方向を示<br />

す。 0 = 切り上げなし、 1 = 切り上げ。<br />

C0、 C2、 C3 未定義。<br />

追加の Itanium ベース・システム環境例外<br />

Itanium アーキテクチャ ・<br />

レジスタ ・ フォルト<br />

浮動小数点レ ジ ス タ無効フ ォ ル ト (PSR.dfl が 1 の場合 )、<br />

NaT レ ジ ス タ参照アボ ー ト 。<br />

浮動小数点例外<br />

#IS ス タ ッ ク ・ アンダ フ ロ ーが発生した場合。<br />

#IA ソース・オペランドがSNaN 値であるか、 ま たはその<br />

フォーマットがサポートされていない場合。<br />

#D 結果がデ ノ ーマル値である場合。<br />

#U 結果が小さすぎて、 デスティネーション・フォーマットで 表現で き ない場合。<br />

#P 値がデステ ィ ネ ーシ ョ ン ・ フ ォ ーマ ッ ト では正確に表現で<br />

きない場合。<br />

第 3 巻 : IA-32 基本命令リファレンス 3:457

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!