if (b or X) = 0 then
Damit das aber jetzt auch verstanden wird, erläuter ich das kurz noch mal, da sonst vielleicht etwas falsch interpretiert wird.
Bei or wird beim Ergebnis ein Bit gesetzt, wenn bei mindestens einer der Zahlen an der Stelle ein Bit gesetzt ist. Macht man z.B. 3 or 5 sieht das so aus:
Code:
011 <- 3
101 <- 5
---
111
Da an jeder Stelle bei mind. einer Zahl eine 1 steht, steht die 1 auch im Ergebnis. Wenn jetzt 0 rauskommen soll, darf beim Ergebnis kein Bit gesetzt sein. Und das Geht nur, wenn die beiden Zaheln 0 sind:
Denn wenn auch nur ein Bit gesetzt wäre, würde etwas höheres als 0 rauskommen.
Hoffe, du hast es jetzt ein wenig besser verstanden