Kurze Frage: Wie wird beim AVR GCC ein signed char interpretiert? Einfach MSB als Vorzeichen, als Einerkomplement oder Zweierkomplement? Ist also beispielsweise eine 253 eigentlich eine -125 eine -2 oder -3? Sorry, konnte es nicht finden. Danke für eure Hilfe!
So wie sonst auch: binär signed unsigned 00000010 = 2 00000001 = 1 00000000 = 0 11111111 = -1 = 255 11111110 = -2 = 254 11111101 = -3 = 253
sorry wrote:
> Einfach MSB als Vorzeichen, als Einerkomplement oder Zweierkomplement?
Einerkomplements sind mit Seymour Cray ausgestorben und sign/magnitude
gibt es m.W. nur bei Fliesskommazahlen.
Danke. Also einfach für die Umrechnung (X - 256) rechnen. (128 < X < 256)
> Einerkomplement Ah, das war doch die Doppelnull ;-) (positive Null und negative Null) > Also einfach für die Umrechnung (X - 256) rechnen. (128 < X < 256) In einem 8 Bit-Wort gibt es keine 256. Das ist das 9. Bit, und ab da kannst du machen was du willst, denn das spielt sich ausserhalb der 8 Bit ab. Du wirst mit einer Manipulation am 9. Bit die unteren nicht ändern. Einfacher ist: zum Komplement eine 1 addieren. So ist das Zweierkomplement definiert.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.