FLD1/FLDL2T/FLDL2E/FLDPI/FLDLG2/FLDLN2/FLDZ - 載入常數

操作碼

指令

說明

D9 E8

FLD1

將 +1.0 壓入 FPU 暫存器堆疊。

D9 E9

FLDL2T

將 log210 壓入 FPU 暫存器堆疊。

D9 EA

FLDL2E

將 log2e 壓入 FPU 暫存器堆疊。

D9 EB

FLDPI

壓入 FPU 暫存器堆疊。

D9 EC

FLDLG2

將 log102 壓入 FPU 暫存器堆疊。

D9 ED

FLDLN2

將 loge2 壓入 FPU 暫存器堆疊。

D9 EE

FLDZ

將 +0.0 壓入 FPU 暫存器堆疊。

說明

將七個常用常數(按擴充套件實數格式)之一壓入 FPU 暫存器堆疊。可以使用這些指令載入的常數包括:+1.0、+0.0、log210、log2e、、log102 及 loge2。對於每個常數,會將內部 66 位常數取整(按 FPU 控制字中的 RC 欄位指定的模式)為外部實數格式。取整不會產生不精確的結果異常 (#P)。

如需有關 常數的說明,請參閱“IA-32 英特爾(R) 體系結構軟件開發人員手冊”第 1 卷第 8 章中標題為 "Pi" 的部分。

操作

TOP TOP - 1;
ST(0) CONSTANT;

影響的 FPU 標誌

C1 - 如果發生堆疊上溢,則設定為 1;否則清除為 0。

C0、C2、C3 - 未定義。

浮點異常

#IS - 發生堆疊上溢。

保護模式異常

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

實地址模式異常

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

虛 8086 模式異常

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

英特爾體系結構相容性

將 RC 欄位設定成向最近值取整時,FPU 產生的常數與英特爾® 8087 及英特爾 287 數學協處理器產生的相同。