Wenn immer nur ein Bit gesetzt sein kann, warum arbeitest du dann überhaupt auf dieser Basis?
Ein Bit Muster setzt man überlicherweise ein um mehere Möglichkeiten in einer Variablen (z.B. ein Byte) unterzubringen. Das heißt bei 0101 würde zum Beispiel die Aktion für das 1. und das 3. Bit ausgeführt werden, die für das 2. und 4. aber nicht.
Wenn du eh immer nur auf eine Möglichkeit reagieren möchtest dann kannst du doch einfach mit ganzen Zahlen oder Zeichen oder was auch immer arbeiten. Also wenn in deinem Byte eine 1 steht dann machst du irgendwas, wenn eine 2 drin steht machst du was anderes und bei einer 3 wieder was anderes usw.