Welche Dezimalzahl steht im 8 Bit-Speicher beifolgenden Speicherbelegungen?

3 Antworten

Vooorsicht!

Es kommt darauf an ob es sich um eine Variable handelt die mit Vorzeichen ist, oder ohne.

In c und c++

gibt es zwei verschiedene Arten von char:

signed char

kann Werte von -128 bis +127 annehmen

unsigned char: Kann Werte von 0 bis 255 annehmen.

Bei unsigned char sind das a=144 und b = 55

aber wenn ein vorzeichenbehafteter Typ vereinbart wurde

dann a = -112

und b = 55

Die Umwandlung erfolgt über Einskomplement und Zweikomplement. Aber das solltest du extra im Web suchen.

Woher ich das weiß:Hobby

du musst nur rechnen. 0 x 2^8 + 1 x 2^7 + 0 x 2^6 + 1 x 2^5 + 1 x 2^4 + 1 x 2^3 + 1 x 2^2 + 1 x 2^1

schon hast du die zahl für A

oder anders ausgedrückt, jedes der register im byte hat den halben wert des vorherigen, angefangen bei 128

das bedeutet

128, 64, 32, 16, 8, 4, 2 und1

du brauchst dann jeweils nur da, wo eine 1 ist, die entsprechende zahl einzusetzen z.B. die 1 an 4. stelle, das sind dann 64. am ende bildest du die quersumme.

lg, anna

Ganz einfach, jedes Bit entspricht einem Wert und jeder Wert dessen Bit mit einer 1 belegt ist wird addiert.

Hier einmal die Werte, die die Bits repräsentieren:

128 | 64 | 32 | 16 | 8 | 4 | 2 | 1

Bei B, also 1001 0000 wäre das dann

128 + 16 = 144

Bei A bin ich mir nicht sicher, ob du da nicht eine Ziffer vergessen hast, da du nur 7 Bits angegeben hast.

Woher ich das weiß:Studium / Ausbildung