Zitat Zitat von sproe Beitrag anzeigen
Vielen Dank erstmal für die Information
Aber was bedeutet das im Zusammenhang mit dem Code?
Wenn du dir die Definition der Hexadezimalzahlen nochmal ansiehst stellst du fest: 0x01 ist 1, 0x02 ist 2, 0x04 ist 4, 0x08 ist 8, 0x10 ist 16 etc. - Kurz: 2^0, 2^1, 2^2 etc.
Das ist also genau der Zahlenwert, den die einzelnen Bits in der Variable "sw" darstellen. Die Zahlen werden als Bitmaske verwendet, das bedeutet, es werden aus "sw" genau die Bits betrachtet, die in der Maske gesetzt sind, im Beispiel von 0x08 ist das das vierte Bit (Wert 2^3 = 8, das niedrigste Bit ist 2^0 = 1). Durch die "und"-Verknüpfung von "sw" und 0x08 bleibt also nur besagtes Bit stehen, wenn es auch in "sw" gesetzt war.

mfG
Markus