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

Binäre Subtraktion mit Zweierkomplement

Binäre Subtraktion kann klassisch bitweise mit Entleihung durchgeführt werden, doch ein noch simplerer Ansatz nutzt die Zweierkomplement-Arithmetik. Indem man den Subtrahenden in seine negative Binärform umwandelt und dann addiert, reduziert sich die Operation auf eine einzige binäre Addition.

Das Zweierkomplement ermöglicht die Kodierung negativer Zahlen in derselben Bitbreite wie positive, indem ein führendes „negativ-gewichtetes“ Bit verwendet wird. Addiert man eine positive zu einer negativen Zahl, verhält sich das höchstwertige Bit des negativen Operanden als negatives Gewicht und führt effektiv Subtraktion aus.

Beispiel 1: 7₁₀ − 5₁₀

Stellen Sie jeden Wert im Zweierkomplement mit drei Datenbits plus einem negativ-gewichteten Bit dar:

positive sieben = 0111₂
negative fünf = 1011₂

Addieren Sie nun:

. 1111 ← Übertragsbits
. 0111
. + 1011
. ------
. 10010
. |
. Überlaufbit verwerfen
. Ergebnis = 0010₂

Das Überlaufbit wird verworfen, da die linkeste Position ein negatives Gewicht (−8) repräsentiert. Das finale 4-Bit-Muster 0010₂ entspricht dem Dezimalwert 2, was 7 − 5 = 2 bestätigt.

Beispiel 2: 18₁₀ + (−25)₁₀

Ermitteln Sie zuerst die erforderliche Bitbreite. Der größte Betrag in der Operation ist 25, was fünf Bits benötigt; fügen Sie eines für das negativ-gewichtete Bit hinzu, ergibt sechs Bits insgesamt.

Stellen Sie +25 und sein Zweierkomplement dar:

+25₁₀ = 011001₂ (sechs Bits)
Einerkomplement von 11001₂ = 100110₂
1 addieren → Zweierkomplement = 100111₂
−25₁₀ = 100111₂

Positives 18 wird geschrieben als:

18₁₀ = 010010₂

Addieren der beiden Zahlen:

. 11 ← Übertragsbits
. 100111
. + 010010
. ------
. 111001

Kein Überlauf tritt auf, das Ergebnis 111001₂ bleibt. Das höchstwertige Bit ist 1, was im Zweierkomplement einen negativen Wert anzeigt. Rückumrechnung in Dezimal:

(1 × −32) + (1 × 16) + (1 × 8) + (1 × 1) = −7

Also 18 + (−25) = −7, wie erwartet.

Weiterführende Arbeitsblätter

Industrietechnik

  1. Elektronik: Eine praxisnahe Wissenschaft für alle
  2. Ein Home-Elektronik-Labor einrichten: Werkzeuge, Arbeitsbereich und Materialien
  3. Multimeter meistern: Genauigkeit bei Spannungsmessung leicht gemacht
  4. Ohmmeter-Messungen meistern: Praktischer Leitfaden zum Widerstandstesten
  5. Grundlegende 6‑V-Batterie-Lampen-Schaltung bauen und fehlerfinden
  6. 3-Bit-Binärzähler mit 555-Timer und 4027 Flip-Flops
  7. Dezimal- vs. Binärsystem: Stellenwert, Effizienz und Umrechnung
  8. Oktal- und Hexadezimalsystem: Praktischer Leitfaden für Ingenieure
  9. Effiziente ARM-Container-Builds auf x86-Systemen
  10. Erste Go-Applikation auf PLCnext bauen: Einsteiger-Guide