??? 04/19/05 12:52 Read: times |
#91921 - Efficient Division Responding to: ???'s previous message |
The division code you have given is a classic binary division algorithm. This is inherently slow.
The Keil C51 16-bit divide operation is well optimised, you might download the evaluation version of Keil and examine it for ideas. Have you considered doing division by multiplying by the reciprocal of the divisor? You can store a table of 16-bit reciprocals and the 8051 can do a fixed point 16-bit by 16-bit multiply pretty quickly. This will give a 32-bit result from which you can extract just the 16 most significant bits to give your answer. The result will not be exact so you will have to carefully consider how much resolution you actually need. |
Topic | Author | Date |
16bit by 8bit divide | 01/01/70 00:00 | |
Check This! | 01/01/70 00:00 | |
And This: | 01/01/70 00:00 | |
16bit by 8bit divide | 01/01/70 00:00 | |
Re: | 01/01/70 00:00 | |
16bit by 8bit divide | 01/01/70 00:00 | |
To Thelam: | 01/01/70 00:00 | |
well, if you look a bit to the left | 01/01/70 00:00 | |
16bit by 8bit divide | 01/01/70 00:00 | |
Its just ben done | 01/01/70 00:00 | |
Non-iterative Division | 01/01/70 00:00 | |
Accuracy | 01/01/70 00:00 | |
No wonder | 01/01/70 00:00 | |
again and again | 01/01/70 00:00 | |
Efficient Division | 01/01/70 00:00 | |
the divide may ne the tip of the iceberg | 01/01/70 00:00 | |
16bit by 8bit divide | 01/01/70 00:00 | |
the Titanic hit the iceberg | 01/01/70 00:00 | |
16bit by 8bit divide | 01/01/70 00:00 | |
Don't know if it helps.![]() | 01/01/70 00:00 |