Les opérateurs logiques sont typiquement utilisés pour comparer des expressions ou des nombres et retournent en résultat des valeurs booléennes.
| Opérateur | Usage | Description | Exemple |
|---|---|---|---|
| And | x And y | L'opérateur renvoie True si les deux opérandes sont vraies; autrement, il retourne False. | (a < 10) And (b > 10) 'Si a et b sont inférieures à 10, l'opérateur retourne True |
| Or | x Or y | L'opérateur renvoie True si l'une ou l'autre des opérandes est vraie ou si toutes les deux sont vraies, sinon il retourne False. | (a >= 1) Or (b == "fin") 'Si a est supérieur ou égal à 1 ou/et si b est égal à fin alors l'opérateur renvoie true, sinon il retourne false |
| Xor | x Xor y | L'opérateur renvoie True si l'une des deux opérandes est vraie, sinon il retourne False. | (a >= 1) Xor (b == "fin") 'Si a est supérieur ou égal à 1 et si b est égal à fin ou si les deux expressions sont fausses alors l'opérateur renvoie true, sinon il retourne false |
| Eqv | x Eqv y | L'opérateur renvoie True si les deux opérandes sont vraies ou fausses, sinon il retourne False. | (a >= 1) Eqv (b == "fin") 'Si a est supérieur ou égal à 1 et si b est égal à fin ou si les deux expressions sont fausses alors l'opérateur renvoie true, sinon il retourne false |
| Not | Not x | L'opérateur renvoie false si son unique opérande peut être convertie en true, sinon il retourne false. | Not (a <= 100) 'Si a est inférieur ou égal à 100 alors l'opérateur retourne false, sinon il renvoie true. |
Un autre opérateur Imp permet d'effectuer une implication logique entre deux expressions.
resultat = expression1 Imp expression2
La comparaison obéit à une logique citée dans le tableau ci-dessous.
| Expression1 | Expression2 | Résultat |
|---|---|---|
| True | True | True |
| True | False | False |
| True | Null | Null |
| False | True | True |
| False | False | True |
| False | Null | True |
| Null | True | True |
| Null | False | Null |
| Null | Null | Null |
L'opérateur Imp effectue une comparaison binaire des bits de position identique dans deux expressions numériques et définit le bit correspondant en retour.
| Expression1 | Expression2 | Résultat |
|---|---|---|
| 0 | 0 | 1 |
| 0 | 1 | 1 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |