对不起这么简单的问题,(从少数学习集会 天)但我正在浏览书籍而无法找到答案
什么是计算1 / f的正确快速方法,其中f是一些 浮在x86 fpu上
是吗
fld dword [ebp+8]
fld1
fdivrp ; fdivrp st0 st1 ?
这是正确的(我的意思是字面上因为我不确定fdivr args) 或者是最简单的方法?
// EDIT
在经典fpu asm中,这是div 1 / f(或1 / sqrt(f))的最佳方法吗? (没有sse,没有carmack技巧 - 我会尝试它,现在我和我 试着做正确的fpu' )
答案 0 :(得分:4)
来自英特尔CPU文档:
FDIVRP - 将ST(0)除以ST(1),将结果存储在ST(1)中,然后弹出寄存器堆栈。
阅读文档。