在MASM中使用浮点值并将其放入变量

问题描述

我试图从ST(0)寄存器中获取值,并将其存储在变量中。但是我的尝试却失败了。 这是代码的一部分,我在其中与float值进行交互。正确的结果存储在ST(0)寄存器中,但是如何从变量中获取结果呢?使用当前代码,我得到的值-

8256657931607403600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.000000

哪个总比没有好,但也很可怕,因为它必须为1.5 xD

    fldz
    fild [FirstEndSum]
    fild [SecondEndSum]
    
    fdivp st(1),st
    fstp [FirstRoot]
    
    push offset FirstRoot      ; 1.5 from ST(0)
    push offset FormatString   ; From Data: FormatString    db      "%f",0
    call printf
    pop eax

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)