的我有一个问题:假设我的浮点单元的堆栈如下:使用FSTP命令
ST0 = +1.5000000000000000e+0001 ST1 = +5.0000000000000000e+0000
ST2 = +2.5000000000000000e+0001 ST3 = +0.0000000000000000e+0000
ST4 = +0.0000000000000000e+0000 ST5 = +0.0000000000000000e+0000
ST6 = +0.0000000000000000e+0000 ST7 = +0.0000000000000000e+0000
做这个指令后:
fstp st(1)
我的预测认为,单元会将st(0)发送到st(1)(堆栈上的情况将为1.5;1.5;2.5;0 etc
),然后弹出堆栈的顶部,以便识别为1.5;2.5;0 etc.
而是,我看到以下内容:
ST0 = +1.5000000000000000e+0001 ST1 = +2.5000000000000000e+0001
ST2 = +0.0000000000000000e+0000 ST3 = +0.0000000000000000e+0000
ST4 = +0.0000000000000000e+0000 ST5 = +0.0000000000000000e+0000
ST6 = +0.0000000000000000e+0000 ST7 = +1.5000000000000000e+0001
我的问题是,为什么st(7)
改变,我如何能实现我的预期效果。谢谢你的帮助!
是的,但如何消除这个问题? – Simon
究竟是什么问题? –