Forum: Mikrocontroller und Digitale Elektronik Frage zu zwei Bytes


von *GAST* (Gast)


Lesenswert?

Guten morgen,
eine Zahl besteht aus zwei Bytes. Das Höherwertige Byte ist gleich 1, 
das niederwertige Byte ist gleich 244. Was ergibt das zusammengesetzt? 
Und wie kommt man darauf?

von celine (Gast)


Lesenswert?

1 * 2^8 + 244 * 2^0

von Kluchscheißernder N. (kluchscheisser)


Lesenswert?

Eine Zahl besteht aus zwei Ziffern, die höherwertige ist eine 1, die 
niederwertige eine 7. Wie kommt man darauf, dass die Zahl 17 ist?

In eine Ziffer (dezimal) passt der Wertevorrat von 0 bis 9, in ein Byte 
der Wertevorrat von 0 bis 255.

MfG

von Thomas K (Gast)


Lesenswert?

MSB: 1 -> 0x01
LSB: 244 -> 0xF4

Ergibt 0x01F4 = 500

Wie man darauf kommt sollte ersichtlich sein.

Gruss
Th

von Frank M. (aktenasche)


Lesenswert?

244dec + 1dec(=1bin) um 8 bit nach links geshiftet

11110100bin
+100000000bin
=
111110100bin
=500dec

von *GAST* (Gast)


Lesenswert?

warum kann die 1 und 244 in hexadezimal zusammengesetzt werden, was 500 
ergibt? Wieso funktioniert das nur bei hexadezimal und nicht auch bei 
dezimal oder octal? Da ist doch nur die Basis anders...

von Klaus W. (mfgkw)


Lesenswert?

Das passt bei hexadezimal deshalb besser, weil du Bytes vorgegeben 
hattest.
Die haben 8 Bit, und eine Hex-Ziffer steht für 4 Bit.
Man kann also jedes Byte leicht mit zwei Hex-Ziffern darstellen
(4 passt genau zweimal in 8).

Bei oktal steht jede Ziffer dagegen für 3 Bit, und 3 passt nicht glatt 
in 8.
Deshalb ist es oktal etwas umständlicher zu rechnen.

Dezimal geht jede Ziffer überhaupt nicht auf ganze Byte auf; deshalb
muß man zur Umrechnung dividieren und multiplizieren.

von der mechatroniker (Gast)


Lesenswert?

Weil die Basis 16 eine Potenz von 2 ist. 8 nicht, 10 auch nicht, und 16 
ist auch keine (ganzzahlige) Potenz von 8 oder 10.

von der mechatroniker (Gast)


Lesenswert?

Äh sorry, mit 8 und 2 gehts natürlich auch, nur nicht so schön.

von Thomas B. (escamoteur)


Lesenswert?

Ich finds super, dass auch auf eine so Grundlegende Frage diesmal 
wirklich konstruktiv und nicht beleidigend geantwortet wurde
Tom

von Martin V. (oldmax)


Lesenswert?

Hi
Mal ein Hinweis zum Rechnen mit Basis und Exponent...
Die dezimalzahl 243 setzt sich aus 2*100+4*10+3 zusammen. In Potenzen 
ausgedrückt:
Einer: 3*10^0
Zehner: 4*10^1
Hunderter: 2*10^2
Die Hochzahlen sind ebenfalls wie auf einem Zahlenstrahl geordnet in der 
Mitte steht die 0
so ist die Zahl 0,3 = 3*10^-1
Eine Mathematik würde nicht stimmen, wenn man nicht gleiche Technik auch 
bei anderer Basis anwenden könnte. z. B. der dezimalwert 500
So ist in der Binärmathematik analog anzusetzen
eine Binäre Zahl aus 9 Bit ergibt z.B. 1 11110100 sich aus :
  0*2^0 (Bit 0= 1.Stelle)
+ 0*2^1 (Bit 1= 2.Stelle)
+ 1*2^2 (Bit 2= 3.Stelle)
....
+ 1*2^8 (Bit 8 = 9. Stelle) sollte dez. 500 ergeben.
Da wir es mit 9 Bits zu tun haben geht's sogar Oktal. Bilden wir erst 
einmal 3 Bitgruppen
111 + 110 + 100 = 7 + 6 + 4 = 764 Oktal
Nun die Rechnung mit Basis 8
  4*8^0 (1.Stelle)
+ 6*8^1 (2.Stelle)
+ 7*8^2 (3.Stelle)
und weils so schön war die Hex-Zahlen...
Bilden wir 4er Bitgruppen, dazu müssen wir mit 0 auffüllen
0001 1111 0100 = 1+ F + 4 =  1F4 Hex
also     4      *16^0   (1.Stelle)
     +   F (15) *16^1   (2.Stelle)
     +   1      *16^1   (3.Stelle)
 Es sollte überall die selbe Dezimalzahl errechnet werden können.
Wenn du noch Spaß hast, dann versuch dich mal mit negativem 
Exponenten....
Außerdem... eigentlich gibt's hier selten beleidigende Antworten, gut, 
manche sind nicht wirklich hilfreich, aber manchmal wird auch versucht, 
Hausaufgaben machen zu lassen, da kommt's denn schon mal vor, das die 
ein oder andere Antwort nicht passt.
Gruß oldmax

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
Noch kein Account? Hier anmelden.