Ich baue derzeit eine 16-Bit-ALU mit Logisim (dh nur Logikgatter), und bin auf einem Teilungsprozess fest. Ich bin zur Zeit nur mit dem einfachen Standard „Divisionsalgorithmus Loop“ (siehe unten):Schnelle Division Algorithmus für Binärzahlen
- Eingangswerte lesen;
- Eingabewerte vergleichen. Warten Sie, bis der Vergleichsprozess abgeschlossen ist.
- Wenn A < B mit Schritt 10 fortfahren. Wenn A ≥ B, mit dem nächsten Schritt fortfahren;
- Subtrahieren Sie B von A;
- Warten bis der Subtraktionsprozess beendet ist;
- Fügen Sie einen hinzu, um zu zählen;
- Warten bis der Zählvorgang beendet ist;
- Wert vom Subtraktionsverfahren zum Eingang schreiben;
- Weiter mit Schritt 1;
- Antwort Auszählung Rest ist
Dies ist jedoch eine sehr lange Zeit für Prozesse mit großen Antworten nimmt (A 300 tick Zyklus 65.000 mal zu wiederholen ist nicht Spaß). Ich frage mich nur, ob es ähnliche Algorithmen gibt, die schneller sind (die ausschließlich Addition und/oder Subtraktion und/oder Multiplikation und irgendeine boolesche Logik verwenden), die unter Verwendung von Logikgattern implementiert werden könnten. Jede Hilfe oder Ideen würde sehr geschätzt werden! Fraser
Es gibt sicherlich andere Divisionalgorithmen. Welche hast du angeschaut und was macht sie für deine Arbeit ungeeignet? – delnan