#acl EditorsGroup:read,write,revert,admin,delete All:read == Benutzung von Bitmasken == Bitmasken werden benutzt, wenn zur Anzeige oder Auswertung von Status oder Interlock Flags, Integer (Ganzzahlen) benutzt werden und deren Einzelbits ausgewertet werden sollen. Folgende Schreibweise wird auf dieser Seite benutzt: * hexadezimale Zahlen beginnen mit {{{'0x'}}} * Zahlen in bitweiser Scheibweise beginnen mit {{{'0b'}}} * bitweises UND (bitwise AND): {{{'&'}}} Bitwise AND mit einer Bitmaske wird gerne verwendet, wenn man ''prüfen'' möchte, ob Bits in einem Integer '''gesetzt sind'''. Die Bitmaske ist dabei der Term, der angibt, welche Bits ausgewertet werden. Dabei wird das Ergebnis des bitwise AND wie folgt generiert: * bei allen Bits, bei dem die Maske NULL ist, ist das Ergebnis NULL * bei allen Bits, bei dem die Maske EINS ist, ist das Ergebnis wie das Bit der Variable selbst. Beispiel {{{ 0xAA & 0x7 = 0x2 bzw. 0b10101010 WERT & 0b00000010 BITMASKE ---------- 0b00000010 ERGEBNIS: 0x2 }}} Anschließend kann der so erzeugte Wert verglichen werden, bei Einzelbits kann man auf gleich/ungleich NULL vergleichen. Sind in der Bitmaske mehr als ein Bit benutzt (ungleich (1,2,4,8,16..) ), so muss mit der Bitmaske verglichen werden. Siehe auch: /svn/global/examples/bitmask.xml [[JDDD|Zurück zur Hauptseite]]