Dividieren von binärzahlen

Das Dividieren von Binärzahlen kann mit der langen Division gelöst werden, einer bequemen Methode, um sich das Verfahren selbst beizubringen oder ein einfaches Computerprogramm zu schreiben. Alternativ bietet die Komplementmethode der wiederholten Subtraktion einen Ansatz, mit dem Sie vielleicht nicht vertraut sind, obwohl er in der Programmierung nicht wirklich verbreitet ist. Maschinensprachen verwenden normalerweise einen Schätzalgorithmus für mehr Effizienz, diese werden hier jedoch nicht beschrieben.

Schritte

Methode 1 von 2: Verwenden der langen Division

Bildtitel Divide Binary Numbers Step 1
1. Gehen Sie noch einmal über die Dezimal-Lang-Division. Wenn Sie eine lange Division mit regulären Dezimalzahlen (Basis 10) seit einiger Zeit nicht mehr durchgeführt haben, überprüfen Sie die Basis für das Problem 172 ÷ 4. Andernfalls überspringen Sie dies und fahren Sie mit dem nächsten Schritt fort, um dieses Verfahren für Binärzahlen zu lernen.
  • Es Dividende wird geteilt durch die Divisor, und die antwort ist es Quotient.
  • Vergleiche den Divisor mit der ersten Ziffer des Dividenden. Wenn der Divisor die größte Zahl ist, fügen Sie dem Dividenden weitere Ziffern hinzu, bis der Divisor die kleinste Zahl ist. (Als Beispiel, wenn wir 172 4 berechnen, vergleichen wir 4 und 1 und stellen fest, dass 4 > 1 und vergleiche dann 4 mit 17.)
  • Schreiben Sie die erste Ziffer des Quotienten über die letzte Ziffer des zum Vergleich verwendeten Dividenden. Nachdem wir 4 und 17 verglichen haben, stellen wir fest, dass 4 viermal in 17 eingeht, also schreiben wir 4 als erste Ziffer unseres Quotienten über 7.
  • Multiplizieren und subtrahieren, um den Rest zu finden. Multiplizieren Sie den Quotienten mit dem Divisor, in diesem Fall 4 x 4 = 16. Schreibe die 16 unter die 17, dann mache 17 - 16 für den Rest, 1.
  • Wiederholen. Wieder vergleichen wir den Teiler 4 mit der nächsten Ziffer 1, wir bemerken, dass 4 > 1, und "bringen" wir verschieben die nächste Ziffer des Dividenden nach unten, um stattdessen 4 mit 12 zu vergleichen. 4 geht dreimal ohne Rest in 12, also können wir 3 als nächste Ziffer des Quotienten schreiben. Die Antwort ist 43.
Bildtitel Divide Binary Numbers Step 2
2. Erstellen Sie ein binäres Long-Division-Setup. Angenommen, wir verwenden als Beispiel 10101 ÷ 11. Schreiben Sie dies als lange Division, mit 10101 als Dividenden und 11 als Divisor. Lassen Sie darüber Platz, um den Quotienten zu schreiben, und schreiben Sie Ihre Berechnungen darunter.
Bildtitel Divide Binary Numbers Step 3
3. Vergleiche den Divisor mit der ersten Ziffer des Dividenden. Dies funktioniert genauso wie die Dezimal-Lang-Division, ist aber in binärer Form viel einfacher. Entweder kann man die Zahl nicht durch den Teiler (0) teilen, oder der Teiler passt einmal hinein (1):
  • 11 > 1, also 11 "passt nicht" 1. Schreiben Sie eine 0 als erste Ziffer des Quotienten (über der ersten Ziffer des Dividenden).
  • Bildtitel Divide Binary Numbers Step 4
    4. Nehmen Sie nun die nächste Zahl und wiederholen Sie, bis Sie 1 . erhalten. Hier sind die nächsten Schritte aus unserem Beispiel:
  • Ziehe die nächste Ziffer der Dividende herunter. 11 > 10. Schreiben Sie eine 0 in den Quotienten.
  • Bring die nächste Zahl runter. 11 < 101. Schreiben Sie eine 1 in den Quotienten.
  • Bildtitel Divide Binary Numbers Step 5
    5. Bestimme den Rest. Wie bei der Dezimal-Lang-Division multiplizieren wir die gerade gefundene Ziffer (1) mit dem Divisor (11) und schreiben das Ergebnis unter unserem Dividenden auf eine Zeile mit der gerade berechneten Ziffer. In binärer Form können wir dies schneller tun, da 1 x der Divisor immer gleich dem Divisor ist:
  • Schreibe den Divisor unter den Dividenden. Hier schreiben wir dies als 11 unter die ersten drei Stellen (101) des Dividenden.
  • Berechnen Sie 101 - 11 für den Rest, 10. Sehen Sie sich an, wie Sie Binärzahlen subtrahieren, wenn Sie sich nicht erinnern.
  • Bildtitel Divide Binary Numbers Step 6
    6. Mach weiter bis das Problem gelöst ist. Bringen Sie die nächste Ziffer des Dealers zum Rest unten, um 100 . zu erhalten. Weil 11 < 100 schreibst du eine 1 als nächste Ziffer des Quotienten. Bearbeiten Sie das Problem wie zuvor:
  • Schreibe 11 unter 100 und subtrahiere diese Zahlen um 1 . zu erhalten.
  • Reduzieren Sie die letzte Ziffer der Dividende und Sie erhalten 11 als Antwort.
  • 11 = 11, also schreibst du 1 als letzte Ziffer des Quotienten (die Antwort).
  • Es gibt keinen Rest, also ist die Aufgabe erledigt. Die Antwort ist 00111, oder einfacher, 111.
  • Bildtitel Divide Binary Numbers Step 7
    7. Fügen Sie bei Bedarf einen Radixpunkt hinzu. Manchmal ist das Ergebnis keine ganze Zahl. Wenn Sie nach der letzten Ziffer noch einen Rest übrig haben, fügen Sie a . hinzu ".0" zur Dividende und a "." zu Ihrem Quotienten, damit Sie eine weitere Zahl nach unten ziehen und weitermachen können. Machen Sie so weiter, bis Sie die gewünschte Genauigkeit erreicht haben, und runden Sie dann Ihre Antwort ab. Auf dem Papier können Sie runden, indem Sie die 0 weglassen oder, wenn die letzte Ziffer eine 1 ist, diese subtrahieren und 1 zur letzten Ziffer addieren. Verwenden Sie beim Programmieren einen der Standard-Rundungsalgorithmen, um Fehler bei der Konvertierung zwischen Binär- und Dezimalzahlen zu vermeiden.
  • Das Dividieren von Binärzahlen führt oft dazu, dass sich Zahlen nach dem Komma wiederholen, häufiger als solche, die in Dezimalschreibweise vorkommen.
  • Dies wird mit dem allgemeineren Begriff bezeichnet "Radixpunkt" auf die du in jedem Zahlensystem triffst, denn du hast die "Komma" nur im Dezimalsystem anzutreffen.
  • Methode 2 von 2: Verwenden der Komplementmethode

    Bildtitel Divide Binary Numbers Step 8
    1. Verstehen Sie die Grundidee. Eine Möglichkeit, Divisionen zu lösen – für jede Basis – besteht darin, den Divisor vom Dividenden und dann den Rest abzuziehen und herauszufinden, wie oft Sie dies noch tun können, bevor Sie zu einer negativen Zahl gelangen. Hier ist ein Beispiel für die Basis 10, das Problem 26 ÷ 7:
    • 26 - 7 = 19 (1 mal abgezogen)
    • 19 - 7 = 12 (2 mal abgezogen)
    • 12 - 7 = 5 (3 mal abgezogen)
    • 5 - 7 = -2. Negative Zahl, also wieder hoch. Die Antwort ist 3 mit einem Rest von 5. Beachten Sie, dass diese Methode keine Dezimalstellen berücksichtigt.
    Bildtitel Divide Binary Numbers Step 9
    2. Lernen Sie, mit Komplementen zu subtrahieren. Obwohl Sie die obige Methode leicht auf Binärzahlen anwenden können, können wir auch eine effizientere Methode verwenden, die Ihnen beim Programmieren von Binärdivisionen Zeit sparen kann. Dies wird als binäres Komplementverfahren bezeichnet. Hier sind die Grundlagen, bei denen wir 111 - 011 berechnen (stellen Sie sicher, dass beide Zahlen gleich lang sind):
  • Finden Sie das Komplement der Einsen des zweiten Termes und subtrahieren Sie jede Ziffer von 1. Sie können dies leicht mit Binärzahlen tun, indem Sie jede 1 auf 0 und alle 0 auf 1 setzen. In unserem Beispiel entspricht 011 100.
  • Addiere 1 zum Ergebnis: 100 + 1 = 101. Dies nennt man das 2er-Komplement. Wir betrachten nun eine Minussumme als Additionssumme. Das Wesentliche ist, dass wir das Problem so betrachten, als würden wir nach Abschluss des Verfahrens eine negative Zahl addieren, anstatt eine positive Zahl zu subtrahieren.
  • Füge das Ergebnis zum ersten Term hinzu. Löse die Summe: 111 + 101 = 1100.
  • Lassen Sie die erste Ziffer aus (Übertragsziffer). Entfernen Sie die erste Ziffer aus Ihrer Antwort, um das Endergebnis zu erhalten. 1100 → 100.
  • Bildtitel Divide Binary Numbers Step 10
    3. Kombinieren Sie die beiden obigen Konzepte. Jetzt wissen Sie, wie die Subtraktionsmethode zum Lösen von Divisionen funktioniert und die 2er-Komplement-Methode zum Lösen von Minussummen. Sie können die beiden zu einer Methode zum Lösen von Divisionsproblemen kombinieren, indem Sie die folgenden Schritte verwenden. Wenn Sie möchten, können Sie versuchen, es selbst herauszufinden, bevor Sie fortfahren.
    Bildtitel Divide Binary Numbers Step 11
    4. Subtrahiere den Divisor vom Dividenden, indem du das 2er-Komplement addierst. Lassen Sie uns folgendes Problem lösen: 100011 ÷ 000101. Der erste Schritt besteht darin, 100011 - 000101 mit der 2er-Komplement-Methode zu lösen, so dass es eine Summe wird:
  • 2er-Komplement von 000101 = 111010 + 1 = 111011
  • 100011 + 111011 = 1011110
  • Lassen Sie die erste Ziffer (den Übertrag) weg → 011110
  • Bildtitel Divide Binary Numbers Step 12
    5. Addiere 1 zum Quotienten. In einem Computerprogramm ist dies der Punkt, an dem Sie den Quotienten um 1 . erhöhen. Machen Sie sich auf dem Papier irgendwo eine Notiz in einer Ecke, wo sie den Rest Ihrer Arbeit nicht durcheinander bringt. Wir haben jetzt einmal erfolgreich eine Minsum gemacht, also ist der Quotient bisher 1.
    Bildtitel Divide Binary Numbers Step 13
    6. Wiederholen Sie dies, indem Sie den Teiler vom Rest subtrahieren. Das Ergebnis unserer letzten Berechnung ist der Rest, der nach dem Divisor einmal übrig bleibt "ging hinein". Addiere das Zweierkomplement des Divisors und subtrahiere den Übertrag. Addiere jedes Mal 1 zum Quotienten und fahre fort, bis du einen Rest gleich deinem kleineren Teiler erhältst:
  • 011110 + 111011 = 1011001 → 011001 (Quotient 1+1=10)
  • 011001 + 111011 = 1010100 → 010100 (Quotient 10+1=11)
  • 010100 + 111011 = 1001111 → 001111 (11+1=100)
  • 001111 + 111011 = 1001010 → 001010 (100+1=101)
  • 001010 + 111011 = 10000101 → 0000101 (101+1=110)
  • 0000101 + 111011 = 1000000 → 000000 (110+1=111)
  • 0 ist kleiner als 101, also können wir jetzt aufhören. Der Quotient 111 ist die Antwort auf das Teilproblem. Der Rest ist das Endergebnis unserer Minsum, in diesem Fall 0 (kein Rest).
  • Tipps

    • Die Inkrement-, Dekrement- oder Stack-Anweisungen sollten berücksichtigt werden, bevor eine binäre Berechnung auf einen Satz von Maschinenanweisungen angewendet wird.
    • Die 2er-Komplement-Methode zur Subtraktion funktioniert nicht, wenn die Zahlen aus einer anderen Anzahl von Ziffern bestehen. Fügen Sie der kleineren Zahl zusätzliche Nullen hinzu, um dies zu lösen.
    • Ignorieren Sie die Ziffer mit Vorzeichen in binären Zahlen mit Vorzeichen, bevor Sie die Berechnung durchführen, außer wenn Sie versuchen, herauszufinden, ob eine Antwort positiv oder negativ ist.

    Оцените, пожалуйста статью