Danke Dir erstmal für den Link:

Verstanden hab ich es nicht wirklich.
Die Abarbeitungsrichtung ist demnach von links nach rechts bei einem Bitweisen AND
== hat den Rang 10
& hat den Rang 4

aber was sagt mir das jetzt ?

wie dem auch sei:
Laut Assembler Code hat mein Compiler result = FALSE daraus gemacht.
Er hat die AND Funktion also garnicht erst ausgeführt.
wie kommt er darauf, er weis dorch garnicht was rauskommt.

es sei denn, er hat es wie folgt aufgelöst ?
if (a & (b==0))

wenn also b==0 ist, muss a zwangsläufig nach dem AND auch 0 sein und damit ist das Ergebnis des Vergleichs immer 0
und deshalb erzeugt er nur den Code für result = FALSE

Liege ich da ungefähr richtg ?