Komische Zahlen



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

Lampe 1
Lampe 2
Zustand
aus
aus
1
aus
ein
2
ein
aus
3
ein
ein
4

- vier Lampen können  16 Zustände haben
- acht Lampen können  256 Zustände haben (die Zahl 256 kommt Dir irgendwie bekannt vor, oder?)


Als man den Computern das Zählen beibrachte, benutzte man einfach die Tatsache, dass in einem Draht Strom fließt oder kein Strom fließt. (Ein bisschen Strom gilt nicht!)

Wenn wir 4 Drähte benutzen, kann der Computer von 0 bis 15 zählen (also 16 Zahlen).
Das könnte man so darstellen (Strom fließt = 1 / Strom aus = 0):



1. Draht
2. Draht
3. Draht
4. Draht
Zahl
0
0
0
0
0
0
0
0
1
1
0
0
1
0
2
0
0
1
1
3
0
1
0
0
4
0
1
0
1
5
0
1
1
0
6
0
1
1
1
7
1
0
0
0
8
1
0
0
1
9
1
0
1
0
10
1
0
1
1
11
1
1
0
0
12
1
1
0
1
13
1
1
1
0
14
1
1
1
1
15


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