Next: Umsetzung in eine Schaltung
Up: n-Bit nach BCD
Previous: n-Bit nach BCD
Um eine Binärzahle durch 10 zu dividieren benutzt man einen Algorithmus,
der dem schriftlichen Dividieren aus der Grundschule entspricht,
übertragen auf das Binärsystem:
- [1.] Man vergleicht die obersten Bits mit 1010.
- [1.1.] Sind sie kleiner
haengt man an das Divisionsergebnis rechts eine null an und
ändert nichts an der Eingabe.
- [1.2.] Sind sie größer oder gleich haengt man an das Ergebnis eine
eins an und zieht von den entsprechenden Bits in der Eingabe
1010 ab.
- [2.] Wandere in der Eingabe ein Bit nach rechts (Richtung Least
Significant Bit) und gehe wieder zu Schritt eins, solange bis man
nicht mehr weiter nach rechts gehen kann.
Beispiel:
11011001 <- Eingabe (217 dezimal)
1010 <- Vergleich: 1101>=1010 Divisionsergebnis: 1
00111001 <- neue Eingabe
1010 <- Vergleich: 0111<=1010 Divisionsergebnis: 10
00111001 <- neue Eingabe
1010 <- Vergleich: 1110>=1010 Divisionsergebnis: 101
00010001 <- neue Eingabe
1010 <- Vergleich: 1000<=1010 Divisionsergebnis: 1010
00010001 <- neue Eingabe
1010 <- Vergleich: 10001>=1010 Divisionsergebnis: 10101
00000111 <- neue Eingabe ist Divisionsrest
Divisionsergebnis: 10101 (21 dezimal)
Divisionsrest: 111 (7 dezimal)
Ingo Rohloff
11/14/1997