Hi,
viele Leute nutzen nicht Hex, sondern so ein Konstrukt hier: DDRB = (1 << DDB3);
Das bedeutet: Schiebe die eins so weit nach "links", dass sie bei DDB3 "landet".
Willst du also dein "00000101" darstellen, kannst du folgendes verwenden:
X = (1 << 2)|(1<<0).
Damit wird eine eins zweimal nach links geschoben, also von 00000001 nach 000000100. Das Ergebnis wird dann mit einer eins, die nicht verschoben wird, per logischem Oder verknüpft:
000000100
000000001
------------
000000101
Oder du nimmst dennoch Hex und rechnest es eben aus. Jeweils vier Bits ergeben ein Zeichen, es wird durchgezählt von null bis 15, wobei die Zahlen zehn bis 15 durch die Buchstaben A bis F repräsentiert werden.
Und ansonsten das übliche, Bit 0 entspricht 1, Bit 1 entspricht 2, Bit 3 entspricht 4, Bit 4 entspricht 8.
mfG
Markus
PS: Eine besser Erklärung gibts sicher im RN-Wissen-Artikelbereich.
Lesezeichen