Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Newton-Rapheson method to calculate X = 1/D

1) Make a guess at the reciprocal X(0) (this can come from a small LUT, but a static "guess" can also work)

2) Calculate an improved reciprocal X(n) iteratively using the relation:

    X(i+1) = X(i)*(2-X(i)*D)
Repeat (2) until X(i) is accurate "enough". This is relatively fast, since the # of correct bits in X() doubles for each iteration.

There are several other methods: https://en.wikipedia.org/wiki/Division_algorithm#Fast_divisi...



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: