Raphson Division For Floating Point Divide?

I am trying to implement the Newton-Raphson Division Algorithm Wikipedia entry to implement a IEEE-754 32-bit floating point divide on a processor which has no hardware divide unit.

My memory locations are 32-bit two's complement word and I have already implemented floating point addition, subtraction, and multiplication, so I can reuse the code to implement the Newton-Raphson algorithm. I am trying to first implement this all in Matlab.

At this step: X_0 = 48/17 - 32/17 * D
How do I bitshift D properly to between 0.5 and 1 as described in the algorithm details?


You might look at the compiler-rt runtime library (part of LLVM), which has a liberal license and implements floating-point operations for processors that lack hardware support.

You could also look at libgcc, though I believe that's GPL, which may or may not be an issue for you.

In fact, don't just look at them. Use one of them (or another soft-float library). There's no need to re-invent the wheel.

链接地址: http://www.djcxy.com/p/85650.html

上一篇: 桥梁和haswell SSE2 / AVX / AVX2

下一篇: 拉夫森分部为浮点分裂?