2016-06-28 13 views
0

Ich versuche, zwei 8-Bit-Zahlen zu addieren, die eine negativ und die zweite positiv ist. Hier ist es, was ich tue:Subtraktion 8-Bit-Binärzahl

92-113 

so vertrete ich jede Zahl als binäre

92 - 01011100 
113 - 01110001 

nach 0 auf 1 und 1 auf 0 zu ändern, erhalte ich:

10001110 and after adding 1 I have 1000111 which is -113 

dann ich m addieren sie und ich bekomme:

11101011 

was tot Verbündeter macht keinen Sinn, was ich wahrscheinlich falsch mache? Würde wirklich lieben zu wissen, wo ich Fehler mache, da es wirklich grundlegendes Wissen ist;/

+0

Warum macht es keinen Sinn? Was wäre Ihrer Meinung nach sinnvoll? –

+0

'11101011' =' 0xEB' = '-21', was die richtige Antwort ist. –

Antwort

0

Sie werden nichts vermissen - 11101011 ist das binäre Äquivalent von -21 (92-113) in 8-Bit-Binärcode.

Für gesungene Integer-Typen bestimmt das linke = Most-Bit, ob die Zahl positiv oder negativ ist. Um die additive Umkehrung zu erhalten, werden alle Bits außer dem rechten umgedreht. Es ist der gleiche Prozess, den Sie verwendet haben, um 113 zu -113 zu konvertieren.

Dies ergibt 00010101, die 21 ist. Also 11101011 ist -21.