Addition negativer Zahlen (binär)

5 Antworten

Binär: 1 2 4 8 16 32 64 128(Negativ-Bit) War nicht das achte Bit bei Bytes für negative Zahlen reserviert? Wenn man bis 24 rechnen möchte, dann braucht man doch noch ein sechstes Bit für das Minuszeichen, sonst ist man über dem Adressraum und bekommt so einen blöden Überlauf!

Ich hab nicht soviel Ahnung davon, aber ich weiß von der Programmierung, dass alle Variablen sich den Zahlenwert für negative und positive Bereiche teilen. Also bei Bytes die 255 haben, teilt es sich auf -128 bis 127 auf.

Versuch es mal, mit einem negativem sechstem Endbyte!

14 in binär = 1110 und 24 in binär=11000 und wenn du addierst dann Summe=100110 und das sind 38

du hast ein paar fehler ...

-14 = 1 0010

-24 = 10 1000

1 0010 + 10 1000 = 1 1101 1010

nach dem umrechnen von 1 1101 1010 in dezimal sind es genau -38


Trollkicker008  23.06.2010, 10:52

sry, gerade nochmal korrigiert und dann gemerkt, dass die korrektur mist war ...

-14 = 1111 0010

-24 = 1110 1000

0

Du musst nur für die Zahl, die du subtrahieren willst, das Zweierkomplement anwenden. Und dann "ganz normal" binär addieren.

edit: ups mein fehler, falsch gelesen, vllt poste ich gleich nochmal ;D

Vielen Dank für die schnellen Antworten!

Die Stellenzahl von t=5 wurde in der Aufgabenstellung vorgegeben. Ich schließe daraus, dass man die Aufgabe mit einer Stellenzahl von 5 nicht lösen kann, richtig?


muab77  23.06.2010, 11:17

Ähm, ja... weil man ja über den möglichen Zahlenwert hinausgeht! Außerdem, bei negativen Zahlen braucht man doch noch ein Extra-Bit für das "Vorzeichen".

0