Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Industrietechnik

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:

. 1111 <--- Übertragsbits . 0111 . + 1011 . ------ . 10010 . | . Überschüssiges Bit verwerfen . . Antwort =00102

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 ).

. 1810 =0100102 . . Jetzt fügen wir sie zusammen und sehen, was wir erhalten:. . 11 <--- Übertragsbits . 100111 . + 010010 . -------- . 111001

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

  1. Elektronik als Wissenschaft
  2. Einrichten eines Heimlabors
  3. Voltmeternutzung
  4. Ohmmeter-Nutzung
  5. Ein ganz einfacher Rundgang
  6. 3-Bit-Binärzähler
  7. Dezimal versus binäre Numerierung
  8. Oktale und hexadezimale Numerierung
  9. Container-Builds für Arm auf x86
  10. Erste Schritte mit Go auf PLCnext