Newton-Raphson分部浮点划分?

时间:2012-02-09 18:49:56

标签: matlab binary floating-point division newtons-method

我正在尝试实现Newton-Raphson分区算法Wikipedia entry,以便在没有硬件分割单元的处理器上实现IEEE-754 32位浮点除法。

我的内存位置是32位二进制补码字,我已经实现了浮点加法,减法和乘法,所以我可以重用代码来实现Newton-Raphson算法。我想在Matlab中首先实现这一切。

在此步骤:     X_0 = 48/17 - 32/17 * D
如算法详细信息中所述,如何将D正确地移位到0.5和1之间?

1 个答案:

答案 0 :(得分:1)

您可以查看compiler-rt运行时库(LLVM的一部分),它具有自由许可,并为缺少硬件支持的处理器实现浮点运算。

你也可以看看libgcc,虽然我认为这是GPL,这对你来说可能是也可能不是。

事实上,不要只看它们。使用其中一个(或另一个软浮动库)。没有必要重新发明轮子。