Binäre Subtraktion
Wir können eine Binärzahl von einer anderen subtrahieren, indem wir die für Dezimalzahlen angepassten Standardtechniken verwenden (Subtraktion jedes Bitpaares von rechts nach links, „Ausleihen“ nach Bedarf von Bits nach links). Wenn wir jedoch die bereits bekannte (und einfachere) Technik der binären Addition zum Subtrahieren nutzen können, wäre das besser.
Wie wir gerade gelernt haben, können wir negative Binärzahlen darstellen, indem wir die „Zweierkomplement“-Methode und ein negatives Stellengewicht verwenden. Hier verwenden wir diese negativen Binärzahlen, um durch Addition zu subtrahieren.
Hier ist ein Beispielproblem:
Subtraktion:710 - 510 Additionsäquivalent:710 + (-510 )
Wenn wir nur sieben und minus fünf in binärer Form (Zweierkomplement) darstellen müssen, brauchen wir nur drei Bits plus das negativ gewichtete Bit:
positive sieben =01112 minus fünf =10112
Jetzt fügen wir sie zusammen:
Da wir unser Zahlenbitfeld bereits als drei Bits plus das negativ gewichtete Bit definiert haben, wird das fünfte Bit in der Antwort (1) verworfen, um das Ergebnis 00102 . zu erhalten , oder positiv zwei, was die richtige Antwort ist.
Ein anderer Weg, um zu verstehen, warum wir dieses zusätzliche Bit verwerfen, besteht darin, sich daran zu erinnern, dass das ganz linke Bit der unteren Zahl ein negatives Gewicht besitzt, in diesem Fall gleich minus acht.
Wenn wir diese beiden Binärzahlen addieren, subtrahieren wir mit den MSBs eigentlich das MSB der unteren Zahl vom MSB der oberen Zahl. Bei der Subtraktion „trägt“ man nie eine Ziffer oder ein Bit auf das nächste linke Stellengewicht.
Versuchen wir es mit einem anderen Beispiel, diesmal mit größeren Zahlen. Wenn wir -2510 . hinzufügen möchten bis 1810 , müssen wir zuerst entscheiden, wie groß unser binäres Bitfeld sein muss.
Um die größte (absolute Wert-) Zahl in unserem Problem darzustellen, die fünfundzwanzig ist, benötigen wir mindestens fünf Bits plus ein sechstes Bit für das negativ gewichtete Bit. Beginnen wir damit, positive 25 darzustellen, dann das Zweier-Komplement zu finden und alles in einer Numerierung zusammenzufassen:
+2510 =0110012 (alle sechs Bits anzeigen) Einerkomplement von 110012 =1001102 Einerkomplement + 1 =Zweierkomplement =1001112 -2510 =1001112
Im Wesentlichen stellen wir minus fünfundzwanzig dar, indem wir das negativ gewichtete (sechste) Bit mit einem Wert von minus zweiunddreißig plus plus sieben (binär 1112) verwenden ).
Da links keine „zusätzlichen“ Bits vorhanden waren, müssen auch keine Bits verworfen werden. Das ganz linke Bit der Antwort ist eine 1, was bedeutet, dass die Antwort negativ ist, in Zweierkomplementform, wie es sein sollte. Wenn wir die Antwort in eine Dezimalform umwandeln, indem wir alle Bits mit ihren jeweiligen Gewichtswerten summieren, erhalten wir:
(1 x -3210 ) + (1 x 1610 ) + (1 x 810 ) + (1 x 110 ) =-710
Tatsächlich -710 ist die richtige Summe von -2510 und 1810 .
VERWANDTE ARBEITSBLÄTTER:
- Arbeitsblatt für binäre Mathematik
Industrietechnik