Les opérateurs logiques
Un opérateur logique est un mot qui connecte deux expressions numériques ou booléennes et génère une valeur. Selon le type d'opérandes connectés, nous les définissons comme des opérateurs conditionnels lorsque nous effectuons des opérations sur des types booléens, tandis que nous les appelons opérateurs logiques lorsque nous opérons sur des nombres entiers. Trois opérateurs binaires et un opérateur unaire sont disponibles.
- 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 ont besoin de comparer deux opérandes, tandis que l'opérateur unaire opère sur un seul opérande. Les opérateurs conditionnels opèrent sur des opérandes de type booléen. Les opérateurs logiques, en revanche, opèrent uniquement sur des nombres entiers ; par conséquent, en cas de nombres à virgule flottante, les nombres soumis à un opérateur logique sont automatiquement convertis en nombres entiers non signés. Les nombres entiers utilisent toujours 64 bits. Pour comprendre les opérateurs logiques, il est nécessaire d'approfondir l'algèbre booléenne et le système de numération binaire.
L'opérateur AND exécute une conjonction logique, renvoyant comme résultat VRAI si les deux opérandes valent VRAI, sinon FAUX. Étant donné qu'il s'agit d'un opérateur binaire et que les bits individuels de chaque opérande ont deux valeurs, les combinaisons possibles sont quatre.
- VRAI AND VRAI = VRAI
- FAUX AND FAUX = FAUX
- FAUX AND VRAI = FAUX
- VRAI AND FAUX = FAUX
Par exemple :
- C = 40 AND 8
La variable C se voit attribuer la valeur résultante 8, car le 3ème bit du nombre 40 est à VRAI. Voir le système de numération binaire.
L'opérateur OR exécute une disjonction logique, renvoyant comme résultat VRAI si l'un des opérandes vaut VRAI, sinon FAUX si les deux opérandes sont FAUX. Étant donné qu'il s'agit d'un opérateur binaire et que les bits individuels de chaque opérande ont deux valeurs, les combinaisons possibles sont quatre.
- VRAI OR VRAI = VRAI
- FAUX OR FAUX = FAUX
- FAUX OR VRAI = VRAI
- VRAI OR FAUX = VRAI
Par exemple :
- C = 32 OR 8
La variable C se voit attribuer la valeur résultante 40, car la somme des bits des deux opérandes renvoie la valeur 40. Voir le système de numération binaire.
- C = 40 OR 9
La variable C se voit attribuer la valeur 41. Cela démontre que la disjonction logique OR n'est pas superposable à une somme arithmétique.
L'opérateur XOR exécute une disjonction exclusive, renvoyant comme résultat VRAI uniquement si les opérandes sont différents entre eux. Étant donné qu'il s'agit d'un opérateur binaire et que les bits individuels de chaque opérande ont deux valeurs, les combinaisons possibles sont quatre.
- VRAI XOR VRAI = FAUX
- FAUX XOR FAUX = FAUX
- FAUX XOR VRAI = VRAI
- VRAI XOR FAUX = VRAI
Par exemple
- C = 40 XOR 8
La variable C se voit attribuer la valeur résultante 32, car la disjonction exclusive des bits des deux opérandes renvoie la valeur 32. Voir le système de numération binaire.
- C = 40 XOR 63
La variable C se voit attribuer la valeur 23, résultat de la disjonction exclusive des bits de 40 et 63.
L'opérateur NOT est utilisé pour exécuter la négation logique, renvoyant comme résultat la valeur opposée à celle en entrée. C'est un opérateur unaire, ce qui signifie qu'il ne nécessite qu'un seul opérande pour être appliqué. Si une expression retourne VRAI, alors "NOT expression" retourne la valeur FAUX, et vice versa. En appliquant cet opérateur à des variables numériques, les nombres signés seront automatiquement convertis en nombres non signés.