Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Kann mir jemand ganz einfach das Zweierkomplement erklär

  Alt 21. Apr 2004, 21:20
Moin Rapthor,

in Ergänzung zu dem Wikipedia Artikel:

Das Zweierkomplement ist nicht auf das binäre Zahlensystem beschränkt, denn das Prinzip funktioniert bei jeder Zahlenbasis, auch im Dezimalsystem.

Grundsätzlich müssen beide Zahlen die gleiche Anzahl Stellen haben.
Ist dies nicht der Fall, so wird die kürzere links mit Nullen aufgefüllt.
Jetzt wird von der Zahl, die Abgezogen werden soll, das Einerkomplement gebildet, dass heisst man ergänzt jede Ziffer bis zur höchsten Ziffer des Zahlensystemes

Beispiel 837 - 12 (dezimalsystem)
aus 12 wird also 012 daraus das Einerkomplement 987

Code:
   837
+  987 Einerkomplement
+    1 Zweikomplement
======
  1825
Da ein Übertrag auf eine Stelle ausserhalb der Zahlenlänge hierbei wegfällt bleibt also 825 übrig, ausserdem kann man daran erkennen, dass die kleiner von der grösseren Zahl abgezogen wurde, das Ergebnis also positiv oder null ist.

Dreht man das Ganze um wird noch ein weiter Schritt notwendig:

Code:
  012
+ 162
+   1
=====
  175
in diesem Falle muss vom Ergebnis noch einmal das Zweierkomplement gebildet werden, um dem Betrag zu erhalten

Code:
  824
+   1
=====
  825
Da vorher kein Übertrag erfolgte ist das Ergebnis als negativ anzusehen.

Soweit wie ich es (vor langer Zeit ) mal gelernt habe
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat