Boolean Operators
◄Contents► ◄Index► ◄Back►
──────────────────────────────────────────────────────────────────────────────
Boolean operators perform bit manipulations, Boolean operations, or tests on
multiple relations. They return a true (nonzero) or false (zero) value to be
used in making a decision.
result = expression1 boolean-operator expression2
■ boolean-operator Any of the following Boolean operators:
NOT Bit-wise complement
AND Conjunction
OR Disjunction (inclusive "or")
XOR Exclusive "or"
EQV Equivalence
IMP Implication
■ Each operator returns results as indicated in the following truth
table. T is true (nonzero); F is false (zero):
Expression1 Expression2 NOT AND OR XOR EQV IMP
═══════════ ═══════════ ═══ ═══ ═══ ═══ ═══ ═══
T T F T T F T T
T F F F T T F F
F T T F T T F T
F F T F F F T T
■ Boolean operations are performed after arithmetic and relational
operations in order of precedence.
■ Expressions are converted to integers or long integers before a
Boolean operation is performed.
■ If the expressions evaluate to 0 or -1, a Boolean operation returns
0 or -1 as the result. Because Boolean operators do bit-wise
calculations, using values other than 0 for false and -1 for true may
produce unexpected results.