Inhaltsverzeichnis
Bit in einem Byte setzen
Setzen
var |= 1«Bitnummer; /* Bitnr ab 0 gezählt */
Löschen
var &= ~(1«Bitnummer);
Fallunterscheidung
Will man ohne Fallunterscheidung das Bit setzen (also ohne Prüfung, ob man Setzen oder Zurücksetzen muss), dann geht das so:
val &= ~(1«Bitnummer));
val |= Bitwertigkeit«Bitnummer;
Der Trick: zuerst löschen und danach mit dem Bitwert verodern.
Ist es 1, dann ist es ein Setzen wie zuvor gezeigt.
Ist es 0, dann ergibt a | 0 = a, bleibt also zurückgesetzt.
— Kai Neugebauer 2022/10/18 20:00 → 364