|
Tips IA32 x87命令一覧 定数ロード命令 FLD1/FLDL2T/FLDL2E/FLDPI/FLDLG2/FLDLN2/FLDZ命令
|
IA32 87命令一覧
このサイトで挙げる命令はx87命令の一覧となります。x87 FPUは16ビットのコプロセッサで、
もともとx86とは独立したICでしたが、80486DXおよびPentium以降に1つのプロセッサとして
統合されました。
調べたい命令の頭文字をクリックすると、表の下に詳細が表示されます
定数ロード命令
クリックすると、表の下に詳細が表示されます
定数ロード命令一覧
|
命令
|
代表命令の説明
(英語)
|
代表命令の説明
(日本語)
|
FLD1/FLDL2T/FLDL2E/FLDPI/FLDLG2/FLDLN2/FLDZ
|
Load Constant
|
浮動小数点定数の1つをFPUレジスタースタックにプッシュします
|
FLD1/FLDL2T/FLDL2E/FLDPI/FLDLG2/FLDLN2/FLDZ命令(Load Constant)
FLD1/FLDL2T/FLDL2E/FLDPI/FLDLG2/FLDLN2/FLDZ命令
|
オペコード
|
命令
|
説明
|
0xD9 0xE8
|
FLD1
|
+1.0をFPUレジスタースタックにプッシュします
|
0xD9 0xE9
|
FLDL2T
|
log210をFPUレジスタースタックにプッシュします
|
0xD9 0xEA
|
FLDL2E
|
log2eをFPUレジスタースタックにプッシュします
|
0xD9 0xEB
|
FLDLPI
|
π をFPUレジスタースタックにプッシュします
|
0xD9 0xEC
|
FLDLG2
|
log102をFPUレジスタースタックにプッシュします
|
0xD9 0xED
|
FLDLN2
|
loge2をFPUレジスタースタックにプッシュします
|
0xD9 0xEE
|
FLDZ
|
+0.0をFPUレジスタースタックにプッシュします
|
詳細
拡張倍精度浮動小数点フォーマットで使用されている7つの定数の中の1つをFPUレジスタースタックに
プッシュします。これらの命令でロードできる定数は+1.0、+0.0、log
210、log
2e、
π 、log
102、log
e2となります。
各定数について、66ビットの内部定数が(
FPU制御レジスターのRCフィールドの指定に従って)
拡張倍精度浮動小数点フォーマットに丸められます。丸め結果としては、
不正確例外(#P)は発生しません。
結果が切り上げられてた場合は、
ステータスレジスターでC1フラグはセットされません
影響のある条件コードフラグ
影響のある条件コードフラグ
|
フラグ
|
説明
|
C0
|
未定義
|
C1
|
0:スタックオーバーフローは発生していません。
1:スタックオーバーフローが発生しました
|
C2
|
未定義
|
C3
|
未定義
|
影響のあるEFLAGSレジスタのフラグ
影響のあるEFLAGSレジスタのフラグ
|
フラグ
|
説明
|
ID
|
-
|
VIP
|
-
|
VIF
|
-
|
AC
|
-
|
VM
|
-
|
RF
|
-
|
NT
|
-
|
IOPL
|
-
|
OF
|
-
|
DF
|
-
|
IF
|
-
|
TF
|
-
|
SF
|
-
|
ZF
|
-
|
AF
|
-
|
PF
|
-
|
CF
|
-
|