Vorzeichlose Binärzahlen subtrahieren?
Wenn ich 5 - 8 rechne bei vorzeichenlosen Binärzahlen, was kommt hier heraus?
5 - 8 = 13?
2 Antworten
> was kommt hier heraus?
ein Überlauf-Fehler, und damit kein Ergebnis, sondern nur eine Fehlermeldung ganz egal, auf welche Art man die Operation durchführt.
Auch egal, ob Binär oder Dezimal oder sonst ein Zahlensystem: Die Operation 5 - 8 hat keine Lösung, wenn man keine negativen Zahlen zulässt.
Natürlich kann man das "minus" anders definieren, Mathematiker haben damit sicher ihren Spaß, aber das hat dann mit dem gewohnten kaufmännischen Subtrahieren wenig zu tun.
-3, wegen der Gegenrichtung.
Rechne 5-6
1111 entspricht -1
Anscheinend. Ich hoffe, das wir hier ein paar Informatik Profis haben, die mir meine Frage beantworten können.
Du hast hier einen Overflow drinnen, der Dir sinnlose Ergebnisse gibt. Deswegen ist die Aussage, dass 5-6="15" ergibt, durchaus richtig, ebenso wie Deine Vermutung 5-8=13. Genau dies kann in manchen Fällen ein Problem werden und zum Überlauf führen.
ist das nicht ein „borrow“? „sbb“ („subtraction with borrow“) ist ein Assembler Befehl für sowas...
Liegt hier bei 5-8 <0 auch ein Carry vor, da der Bereich 0 bis 15 überschritten wird? Und ein Carry bei vorzeichenbehafteten Dualzahlen führt dann zu einem Overflow
8+9 = > 15 also Carry und Overflow. Genauso wie 5-8 < 0
Wir haben hier vorzeichenlose Binärzahlen, da kann keine negative Zahl rauskommen.