I am currently creating a 16-bit ALU using Logisim (i.e. only logical), and I am fixated on the division process. Currently, I just use a simple standard "separation algorithm loop" (as shown below):
- Reading input values;
- Compare input values. Wait until the comparison process is complete;
- If A <B goes to step 10. If A & ge; B, go to the next step;
- Subtract B from A;
- Wait until the subtraction process is complete;
- Add it for counting;
- Wait until the counting process is complete;
- Enter a value from the subtraction process to enter;
- Go to step 1;
- The answer is counter balance A
This, however, takes a lot of time for processes with large responses (repeating a cycle of 300 ticks 65,000 times is not fun). I'm just wondering if there are similar algorithms that are faster (which use only addition and / or subtraction and / or multiplication and any logical logic) that can be implemented using logical gates. Any help or ideas would be greatly appreciated! Fraser
algorithm binary logic division
Fraser Price
source share