Hallo. Im AVR-GCC Tutorial steht, man setzt bzw. löscht ein Bit im Register x so: x |= (1 << Bitnummer); x &= ~(1 << Bitnummer); Nun habe ich im AVR-Studio Simulator folgende Schreibweise ausprobiert x = (1 << Bitnummer); x = (0 << Bitnummer); und bin auf das selbe Ergebnis wie beim ersten Verfahren gekommen. Nun meine Frage: Warum einfach, wenns auch umständlich geht? Gibt es einen besonderen Grund für das eher unansehnliche Verfahren? mfg
x |= (1 << Bit) ist equivalent zu x = x | (1 << Bit). Das heißt es wird nur Bit gesetzt. die anderen bleiben unberührt. Wenn du x = (1 << Bit) schreibst, wird Bit gesetzt und die anderen auf 0 gesetzt. Das gleiche dann auch beim Löschen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.