F2XM1 - 計算 2x-1

操作碼

指令

說明

D9 F0

F2XM1

將 ST(0) 替換成 (2ST(0) - 1)

說明

計算 2 的指數(源運算元)冪減 1。源運算元位於暫存器 ST(0),結果也儲存到 ST(0)。源運算元的值必須在範圍 -1.0 到 +1.0 內。如果源運算元值超出此範圍,則結果未定義。

下表顯示計算各類數值的指數冪時得到的結果(假設未發生上溢或下溢)。

ST(0) SRC

ST(0) DEST

-1.0 到 -0

-0.5 到 -0

-0

-0

+0

+0

+0 到 +1.0

+0 到 1.0

2 以外的其它值的指數冪可以使用以下公式計算:

xy 2(y * log2x)

操作

ST(0) (2ST(0) - 1);

影響的 FPU 標誌

如果結果取整則設定為 1;否則清除。

C0、C2、C3 - 未定義。

浮點異常

#IS - 發生堆疊下溢。

#IA - 源運算元是 SNaN 值或不支援的格式。

#D - 源運算元是非規格化值。

#U - 結果對於目標格式而言太小。

#P - 值無法按目標格式精確表示。

保護模式異常

#NM - 如果 CR0 中的 EM 或 TS 設定為 1。

實地址模式異常

#NM - 如果 CR0 中的 EM 或 TS 設定為 1。

虛 8086 模式異常

#NM - 如果 CR0 中的 EM 或 TS 設定為 1。