Maxim wrote:
> Ich verstehe nicht ganz, welches Ergebnis z.B. das hier liefert:
>
BYTE a = 0b00010001;
BYTE b = 0b10000000;
return a||b
Das gibt "1" als Ergebnis.
> und welches Ergebnis würde eine Und-Verknüpfung liefern und warum?
> Das steht leider nicht so ausführlich in der Artikelsammlung.
Die "&&"-Verknüpfung liefert in diesem Fall auch eine "1" als Ergebnis.
> Muss jedes der acht Verknüpfungen eines Bytes true liefern oder reicht
> nur ein true aus?
Die Operatoren "&&" und "||" sind die logischen Operatoren. Sie
überprüfen, ob die Werte links und rechts von ihnen "wahr" oder "falsch"
sind und führen mit diesen Wahrheitswerten die entsprechenden
Verknüpfungen durch. "wahr" ist dabei ALLES, was nicht "0" ist!
Da im obigen Beispiel beide Operanden ungleich Null sind, liefern beide
Operanden ein "wahr", also eine "1" zurück.
Mit den bitweisen Operatoren "&" und "|" ist das anders. Dabei werden
die Operanden Bit für Bit miteinander verknüpft. Mit den obigen Werten
wäre
a | b == 10010001b
a & b == 00000000b