Binärzahlen < Technische Inform. < Praktische Inform. < Hochschule < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 21:10 Sa 22.10.2005 | Autor: | baerchen |
Hallo,
ich möchte die Subtraktion 2231-1121 (Dezimal) binär durchführen, mit Hilfe des 2-Komplement.
Das habe ich auch gemacht.
2231 braucht man ja nur einfach umwandeln und ich erhalte: 100010110111
Für die -1121 erhalte ich umgewandelt: 01110011111
Ich habe nun die beiden dualen Zahlen miteinander addiert und erhielt: 110001010110.
Das ist aber falsch, richtig wäre das Ergebnis ohne die erste 1, denn beim dezimal rechnen erhält man für 2231-1121 = 1110.
Wieso muss ich die 1. Zahl abschneiden?
Ich kenne nur, dass ich die 1. abschneiden muss, wenn ich eine n-lange Zahl plus eine k-lange Zahl (n>k) rechne und wenn mein Ergebnis länger als die n-längige Zahl ist, also n+1 usw. Stellen hat.
Lauter Fragen hat heute
Bärchen
|
|
|
|
Hallo Bärchen,
> ich möchte die Subtraktion 2231-1121 (Dezimal) binär
> durchführen, mit Hilfe des 2-Komplement.
>
> Das habe ich auch gemacht.
> 2231 braucht man ja nur einfach umwandeln und ich erhalte:
> 100010110111
> Für die -1121 erhalte ich umgewandelt: 01110011111
> Ich habe nun die beiden dualen Zahlen miteinander addiert
Mir ist aufgefallen, daß deine umgewandelten Zahlen verschiedene Anzahlen von Stellen besitzen:
100010110111
01110011111
Ich denke, daß es daher nicht klappt. Du hast ja die beiden Zahlen danach nach der Schulmethode addiert und dabei etwas automatisch vorrausgesetzt, was Du gar nicht vorraussetzen wolltest. Nämlich das hier:
100010110111
001110011111
Der 2er-Komplement funktioniert nämlich immer nur innerhalb einer vorgegebenen Anzahl von Ziffern (bzw. Stellen). Die Stellen-Anzahlen aller Zahlen innerhalb eines solchen Zahlenbereichs müssen übereinstimmen, sonst passiert das, was dir passiert ist.
Angenommen wir rechnen mit 12-stelliger Genauigkeit. Dann gilt:
-1121: 010001100001 [mm] $\to$ [/mm] 101110011111
Jetzt noch addieren:
100010110111
101110011111
------------
1|010001010110 (1110 im Dezimalsystem)
Da wir insgesamt nur 12 Stellen vorrausgesetzt haben, fällt die 1 nach der Addition weg. Die 12te Stelle ist eine 0, weswegen das Ergebnis positiv ist.
Grüße
Karl
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 22:12 So 23.10.2005 | Autor: | baerchen |
Hallo Karl,
herzlichen Dank für deine Antwort. Nun verstehe ich das ganze.
Und natürlich auch danke für das Verschieben der Frage, klar, dass die Frage zur Informatik gehört.
Liebe Grüße
Bärchen
|
|
|
|