AND (Operator)

FreeBASIC-Referenz » Alphabetische Befehlsreferenz » A » AND (Operator)

Syntax A: Ergebnis = Ausdruck1 AND Ausdruck2
Syntax B: Ausdruck1 AND= Ausdruck2
Typ: Operator
Kategorie: Operatoren

AND kann als einfacher (Syntax A) und kombinierter (Syntax B) Operator eingesetzt werden. Syntax B ist eine Kurzform von

Ausdruck1 = Ausdruck1 AND Ausdruck2

AND vergleicht zwei Werte Bit für Bit und setzt im Ergebnis nur dann ein Bit, wenn die entsprechenden Bits in beiden Ausdrücken gesetzt waren. AND wird in Bedingungen eingesetzt, wenn beide Aussagen erfüllt sein müssen.

AND kann mithilfe von OPERATOR überladen werden.

Beispiel 1: AND in einer IF-THEN-Bedingung:

IF (a = 1) AND (b = 7) THEN
PRINT "beides erfüllt"
ELSE
PRINT "Entweder a <> 1 oder b <> 7."
END IF

Beispiel 2: Konjunktion zweier Zahlen mit AND:

DIM AS INTEGER z1, z2

z1 =  6
z2 = 10

PRINT z1, BIN(z1, 4)
PRINT z2, BIN(z2, 4)
PRINT "---", "----"
PRINT z1 AND z2, BIN(z1 AND z2, 4)
SLEEP

Ausgabe:

  6           0110
 10           1010
---           ----
  2           0010

Beispiel 3: AND als kombinierter Operator

DIM AS INTEGER w, bnr

INPUT "Bitte geben Sie eine Zahl ein.", w
PRINT "Bitte geben Sie die Nummer des Bits ein,"
INPUT " auf das geprueft werden soll.", bnr

w AND= (1 SHL bnr)

IF w THEN
   PRINT "Dieses Bit wurde gesetzt."
ELSE
   PRINT "Dieses Bit wurde nicht gesetzt."
END IF
SLEEP

Ausgabebeispiel:

Bitte geben Sie eine Zahl ein. 5
Bitte geben Sie die Nummer des Bits ein,
 auf das geprueft werden soll. 2
Dieses Bit wurde gesetzt

Unterschiede zu QB:
Kombinierte Operatoren sind neu in FreeBASIC.

Siehe auch:
AND (Methode), NOT, OR (Operator), XOR (Operator), IMP, EQV, ANDALSO, Bit Operatoren / Manipulationen