Java Reference
In-Depth Information
Wie geht es nun in die andere Richtung? Der Ausdruck >> 1 verschiebt die Bits um eine
Stelle nach rechts. Das bedeutet, dass bei der Binärdarstellung der Zahl 42 (00101010) das
am weitesten rechts stehende Bit verschwindet und links eine binäre 0 dazukommt. Das
führt in der Binärdarstellung zum Wert 00010101 . Dezimal ist das die Zahl 21. Ofensicht-
lich steht der Ausdruck >> 1 für eine Halbierung des Werts. Wenn wir jetzt bei der Binär-
darstellung der Zahl 42 (00101010) zwei Stellen nach rechts schieben ( >> 2 ), wird gevier-
telt. Beachten Sie, dass hier aber eine Ganzzahldivision durchgeführt wird!
Die bitweisen arithmetischen Operatoren
Betrachten wir nun die bitweisen arithmetischen Operatoren. Diese dienen zur Verknüp-
fung von zwei Operanden auf Bitebene. Das bedeutet, dass das Bit im einen Operanden mit
dem Bit an der gleichen Stelle des zweiten Operanden verknüpt wird.
Tabelle 5.9■ Die bitweisen arithmetischen Operatoren
Operator
Beschreibung
Bitweiser AND-Operator
&
Bitweiser OR-Operator
|
Bitweiser XOR-Operator - das ausschließende Oder (englisch: exclusive OR)
^
Bitweises NICHT - auch bitweiser Komplementoperator genannt
~
Um die Sache zu verstehen, schauen wir uns an, was auf Binärebene passiert, wenn zwei
Bits aufeinandertrefen. Das bitweise UND funktioniert wie folgt:
Tabelle 5.10■ Bitweises UND
0 & 0 = 0
0 & 1 = 0
1 & 0 = 0
1 & 1 = 1
Das Ergebnis zweier mit UND verknüpter binärer Zahlen führt also dazu, dass nur bei den
Bits, an denen in beiden Operanden übereinstimmend eine Eins steht, nach der Operation
wieder eine Eins zu inden ist. Beispiel:
Tabelle 5.11■ Die binäre UND-Verknüpfung
Operation
Dezimaldarstellung
Binärdarstellung
10
0000 1010
12
0000 1100
&
Ergebnis
8
0000 1000
Das bitweise ODER folgt nachstehendem Schema:
Tabelle 5.12■ Bitweises ODER
0 | 0 = 0
0 | 1 = 1
1 | 0 = 1
1 | 1 = 1
 
Search WWH ::




Custom Search