Boolean operator (tsz. Boolean operators)
!
(C++, Java, stb.), not
(Python), ¬
(matematikai írásban)A | NOT A |
---|---|
0 | 1 |
1 | 0 |
Példa (C++):
bool x = true;
bool y = !x; // y = false
&&
(C++, Java), and
(Python), ∧
(matematika)A | B | A AND B |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Példa:
bool a = true;
bool b = false;
bool c = a && b; // c = false
||
(C++, Java), or
(Python), ∨
(matematika)A | B | A OR B |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
^
(C++, bitenkénti), xor
(elmélet)A | B | A XOR B |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
if (x > 0 && x < 10) {
cout << "x egy 0 és 10 közötti szám." << endl;
}
"apple AND orange"
– csak azok az oldalak, ahol mindkettő szerepel."apple OR orange"
– legalább az egyik."NOT banana"
– ahol a banán nem szerepel.
bool
), hanem egész számok bitjein dolgoznak.Operátor | Jelentés | Példa (a=5 , b=3 )
|
Bináris példa | |||
---|---|---|---|---|---|---|
&
|
AND | a & b = 1
|
0101 & 0011 = 0001
|
|||
` | ` | OR | `a | b = 7` | `0101 | 0011= 0111`
|
^
|
XOR | a ^ b = 6
|
0101 ^ 0011 = 0110
|
|||
~
|
NOT | ~a = -6
|
~0101 = 1010 (kétkomplementes)
|
A logikai műveletek kombinálásával bonyolultabb logikai kifejezések és függvények alkothatók. Az igazságtábla segítségével minden kombinációra kiszámíthatjuk a kifejezés kimenetét.
Két fontos szabály a logikai műveletek egyszerűsítéséhez:
!(A && B)
≡ !A || !B
!(A || B)
≡ !A && !B
Hasznos programozásban és digitális áramkörökben is.
A Boolean operátorok kapuként (gate) ismertek az elektronikában:
Operátor | Leírás | Szimbólum | Kimenet akkor igaz, ha… | ||
---|---|---|---|---|---|
NOT | Tagadás | ! , not , ¬
|
az operandus hamis | ||
AND | Konjunkció | && , and , ∧
|
mindkettő igaz | ||
OR | Diszjunkció | ` | , or, ∨`
|
legalább egyik igaz | |
XOR | Kizáró VAGY | ^
|
pontosan az egyik igaz |