Menu des manuels

 

Les opérateurs logiques

 
Un opérateur logique est un mot qui connecte deux expressions numériques ou booléennes et qui produit une valeur. Selon le type d'opérandes connectés, ils sont définis opérateurs conditionnels quand on exécute des opérations sur des types booléens, tandis qu'ils sont appelés opérateurs logiques quand on intervient sur des numéros entiers. Ils Sont disponibles trois opérateurs binaires et un opérateur unaire. - AND - Conjonction conditionnelle ou logique (opérateur binaire); - OR - Disjonction conditionnelle ou logique (opérateur binaire); - XOR - Disjonction exclusive conditionnelle ou logique (opérateur binaire); - NOT - Négation conditionnelle ou logique (opérateur unaire). Les opérateurs conditionnels ou logiques binaires doivent comparer deux opérandes, tandis que l'opérateur unaire agit sur un seul opérande. Les opérateurs conditionnels agissent sur des opérandes du type booléen. Au contraire les opérateurs logiques agissent uniquement sur des numéros entiers, donc au cas de numéros avec virgule mobile, les numéros soumis à un opérateur logique sont automatiquement transformés en numéros entiers sans signe. Les numéros entiers utilisent toujours 64 bit. Pour comprendre les opérateurs logiques il faut approfondir l'algèbre booléenne et le système numérique binaire. L'opérateur AND exécute une conjonction logique, en retournant comme résultat TRUE si les deux opérandes valent VRAI, autrement FALSE. Vu qu'il s'agit d'un opérateur binaire, et que les bit de chaque opérande ont deux valeurs, les combinaisons possibles sont quatre. - TRUE AND TRUE = TRUE - FALSE AND FALSE = FALSE - FALSE AND TRUE = FALSE - TRUE AND FALSE = FALSE Par exemple: - C = 40 AND 8 À la variable C est attribuée la valeur de 8, car le 3° bit du numéro 40 est TRUE. Voir le système numérique binaire. L'opérateur OR exécute une disjonction logique, en retournant comme résultat TRUE si un des opérandes vaut TRUE, autrement FALSE si les deux opérandes sont FALSE. Vu qu'il s'agit d'un opérateur binaire, et que les bit de chaque opérande ont deux valeurs, les combinaisons possibles sont quatre. - TRUE OR TRUE = TRUE - FALSE OR FALSE = FALSE - FALSE OR TRUE = TRUE - TRUE OR FALSE = TRUE Par exemple: - C = 32 OR 8 À la variable C est attribuée la valeur de 40, car la somme des bit des deux opérandes retourne la valeur 40. Voir le système numérique binaire. - C = 40 OR 9 À la variable C est attribuée la valeur 41. Cela montre que la disjonction logique OR n'est pas superposable à une somme arithmétique. L'opérateur XOR exécute une disjonction exclusive, en retournant comme résultat TRUE seulement si les opérandes sont différents entre eux. Vu qu'il s'agit d'un opérateur binaire, et les bit de chaque opérande ont deux valeurs, les combinaisons possibles sont quatre. - TRUE XOR TRUE = FALSE - FALSE XOR FALSE = FALSE - FALSE XOR TRUE = TRUE - TRUE XOR FALSE = TRUE Par exemple - C = 40 XOR 8 À la variable C est attribuée la valeur de 32, car la disjonction exclusive des bit des deux opérandes retourne la valeur 32. Voir le système numérique binaire. - C = 40 XOR 63 À la variable C est attribuée la valeur 23, résultat de la disjonction exclusive des bit de 40 et 63. L'opérateur NOT est utilisé pour exécuter la négation logique, en retournant comme résultat la valeur opposée à celle en entrée. Celui-ci est un opérateur unaire, ce qui signifie qu'il nécessite uniquement d'un opérande pour être appliqué. Si une expression retourne TRUE, alors "NOT expression" retourne la valeur FALSE, et vice versa. En appliquant cet opérateur à des variables numériques, les numéros avec signe seront automatiquement transformés en numéros sans signe.