Auch wenn das sbit.h sicherlich eine gute Lösung ist, kommt der TO nicht
umhin, den Zusammenhang zwischen dezimaler Schreibweise, binärer
Schreibweise und hexadezimaler Schreibweise zu lernen
1 | dezimal Hex binär dezimal Hex binär
|
2 | 0 0 0000 8 8 1000
|
3 | 1 1 0001 9 9 1001
|
4 | 2 2 0010 10 A 1010
|
5 | 3 3 0011 11 B 1011
|
6 | 4 4 0100 12 C 1100
|
7 | 5 5 0101 13 D 1101
|
8 | 6 6 0110 14 E 1110
|
9 | 7 7 0111 15 F 1111
|
speziell in der µC-Programmierung ist es unumgänglich diese Tabelle,
speziell die Hex-binär Entsprechung im Kopf zu haben.
Das sieht nur auf den ersten Blick kompliziert aus, tatsächlich ist
diese Tabelle recht einfach zu merken - es gibt da ein paar
augenscheinliche Zusammenhänge, die aus dem prinzipiellen Aufbau von
Zahlen-Stellenwertsystemen resultieren.
Hex ist deshalb die interessantere Version, weil eine 8-Bit Zahl,
geschrieben als Hexadezimalzahl, ganz einfach die Aneinanderreihung der
beiden 4-Bit Bitmuster der jeweiligen Hex-Ziffern ist.
1 | 0xC1
|
2 |
|
3 | C 1100
|
4 | 1 0001
|
5 |
|
6 | also ist 0xC1 11000001
|
Um einzelne Portpins gezielt auf 0 oder 1 zu setzen, gibt es allerdings
bessere Möglichkeiten als die Zuweisung einr Hex-Zahl oder eines
Binärmusters. Denn da hat man dann das Problem, dass man ja nicht nur
das eine gewollte Bit verändert, sondern immer alle 8. D.h. das muss
berücksichtigt werden, das dem so ist.
Und da greifen dann die anderen Dinge. Allerdings entbindet das nicht
davon, den zusammenhang Binärschreibweise zu Hex-Schreibweise zu kennen.