Vorwissen:kommt noch
Inhalt:Das binäre Zahlensystem
Operatoren
Verwendung
Das binäre ZahlensystemJeder kennt es:
Das Dezimalsystem. Wir benutzen es täglich für die verschiedensten Aufgaben, doch eines steht fest:
Es besteht aus den zehn Ziffern 0,1,2,3,4,5,6,7,8 und 9. Daher auch der Name. Wollen wir größere Zahlen darstellen, müssen wir mehr Stellen benutzen. Das hexadezimal hat übrigens 16 Ziffern, doch das ist nicht das Thema. Das Binärsystem hat, wer hätte es gedacht, 2 Ziffern: 0 und 1.
Nun mal zählen wir mal von 0 bis 10:
Dezimal | Binär |
0 | 00000000 |
1 | 00000001 |
2 | 00000010 |
3 | 00000011 |
4 | 00000100 |
5 | 00000101 |
6 | 00000110 |
7 | 00000111 |
8 | 00001000 |
9 | 00001001 |
10 | 00001010 |
Jede einzelne Stelle stellt ein Bit dar. 8 Bit sind 1 Byte.
Verstanden?
Gut!
OperaterenDie Binäroperatoren kann man in zwei Kategorien einteilen:
bitweise und bitschiebe Operatoren.
Bitweise Operatoren:~Das Zeichen oben ist 1. eine Tilde und 2. ein bitweises NOT.
Das heißt es negiert alle Bits einzeln.
Beispiele:
- Code:
-
~00000000 = 11111111
~00000100 = 11111011
~00111001 = 11000110
&Der &(und) Operator braucht zwei Werte. Diese vergleicht er.
Wenn ein Bit im ersten
und im zweiten Wert gesetzt ist ist es im Ergebnis auch gesetzt.
Beispiele:
- Code:
-
11111111
&01101100
=01101100
01101101
&01100011
=01100001
|Das bitweise Oder. Ein Bit im Ergebnis ist dann 1 wenn midestens der beiden anderen Werte 1 sind.
Beispiele:
- Code:
-
10001001
|01000110
=11001111
01101001
|01000101
=01101101
^Dies ist das Exklusiv-Oder. Es ist wie das Oder, bloß, dass hier genau ein Bit 1 und genau eins 0 sein muss.
Beispiele:
- Code:
-
10001001
^01000110
=11001111
01101001
^01000101
=00101100
Nun gibt es noch mehr Operatoren:
Die Bitschiebe-OperatorenDiese ermöglichen es Bitschiebereien durchzuführen.
Der Operator << verschiebt alle Bits um eine Zahl nach links, während der Operator >> genau das Gegen teil macht.
Beispiel:
- Code:
-
00010000>>4 = 00000001
Mehr vieleicht an anderer Stelle...
Verwendung:Verwenden kann man diese zum Beispiel für Bitmasken. Das prominenteste Beispiel sind hier wohl die C4D(Category)-Werte. Sie sind im Prinzip nichts anderes als Bitmasken.
Hier ist Baustelle!!!