本教程链接库有两个浮点数输入输出过程,如下所示:
ReadFloat 接收各种形式的浮点数,示例如下:
ShowFPUStack 另一个有用的过程,能够显示 FPU 堆栈。调用该过程不需要参数:
【示例】下面的示例程序把两个浮点数压入 FPU 堆栈并显示,再由用户输入两个数,将它们相乘并显示乘积:
- ; 32位浮点数 I/O 测试 (floatTest32.asm)
- INCLUDE Irvine32.inc
- INCLUDE macros.inc
- .data
- first REAL8 123.456
- second REAL8 10.0
- third REAL8 ?
- .code
- main PROC
- finit ; 初始化 FPU
- ; 两个浮点数入栈,并显示 FPU 堆栈.
- fld first
- fld second
- call ShowFPUStack
- ; 输入两个浮点数,并显示它们的乘机
- mWrite "Please enter a real number: "
- call ReadFloat
-
- mWrite "Please enter a real number: "
- call ReadFloat
-
- fmul ST(0),ST(1) ; 相乘
-
- mWrite "Their product is: "
- call WriteFloat
- call Crlf
- exit
- main ENDP
- END main
示例输入/输出(用户输入显示为粗体)如下: