Du verwendest sicher im täglichen Sprachgebrauch das
Zehner-Zahlensystem.
Bei Computern und Mikrocontrollern stößt Du auf weitere
Zahlensysteme, z. B. das Binärzahlensystem.
Schauen wir uns einmal
Binärzahlen an.
Eine Lampe kann an oder aus sein - also 2 Zustände haben.
Jetzt sag bitte nicht, dass eine Lampe auch halbhell sein kann! Das
kann sie natürlich. Aber wir wollen hier digitale Ausgänge und
digitale Eingänge erklären und die sind eben entweder HIGH oder
LOW. Was in userem Falle bedeutet: sie führen 5V oder 0V.
Also nochmal:
- eine Lampe kann zwei Zustände haben
- zwei Lampen können bereits 4 Zustände haben
Natürlich muss sich der Computer eine Zahl auch merken können.
Dazu kann man sie in einen Speicher hineinschreiben (z. B. in ein
sogenanntes Register).
Ein Register mit 4 Zellen kapiert dann maximal die Zahlen 0 bis
15. Und ein Register mit 8 Zellen versteht Zahlen von 0 bis 255.
Der Mensch benutzt für Zahlen gewöhnlich 10 Ziffern: 0, 1, 2, 3, 4,
5, 6, 7, 8 und 9.
Er benutzt also das Dezimalsystem.
Wenn wir gezwungen sind, nur Nullen und Einsen benutzen zu müssen,
nehmen wir eben das binäre
Zahlensystem.
Eine dezimale 13 wird binär zu 1101.
Schauen wir uns einmal
Hexadezimalzahlen an.
Damit wir bis 10 zählen können, brauchen wir also mindestens 4
Lampen oder Drähte.
4 Drähte können aber sogar bis 16 zählen. Also hat man das
Hexadezimalsystem ebenfalls in Benutzung.
Da wir aber nur 10 einstellige Ziffern haben, wird im
Hexadezimalsystem auf Buchstaben ausgewichen:
dez
|
hex
|
0
|
0
|
1
|
1
|
2
|
2
|
3
|
3
|
4
|
4
|
5
|
5
|
6
|
6
|
7
|
7
|
8
|
8
|
9
|
9
|
10
|
A
|
11
|
B
|
12
|
C
|
13
|
D
|
14
|
E
|
15
|
F
|
Diese Umrechnungen kann jedes bessere Taschenrechnerprogramm in
Deinem Computer.
Oft muss man bei dem Taschenrechnerprogramm auf die Ansicht
"Wissenschaftlich" oder "Programmieren" umschalten.
Ich will Dich nicht mit Mathe quälen! =o)
Zusammenfassung:
Jedes Zahlensystem hat eine Basis. Diese Basis gibt dem Zahlensystem
auch ihren Namen.
10
|
Dezimalzahlensystem
|
2
|
Binärzahlensystem
|
16
|
Hexadezimalzahlensystem
|
In der Programmiersprache
des Arduino schreibt man die Dezimalzahl 127 wie folgt:
- binär: 0b01111111
- hexadezimal: 0x7F
- dezimal: 127