Les booléens
Le traitement de l'information repose sur la logique binaire. Une variable qui ne peut prendre que deux valeurs est appelée une variable booléenne.
En informatique, on utilise les valeurs 0 (pour Faux) et 1 (pour Vrai). Ces valeurs sont à la base de toutes les décisions prises par un processeur.
I. Les opérateurs booléens fondamentaux
1. L'opérateur NOT (Non) : Il inverse la valeur d'entrée.
| Entrée A | Sortie : not A |
|---|---|
| 0 | 1 |
| 1 | 0 |
2. L'opérateur AND (Et) : Le résultat est 1 seulement si les deux entrées valent 1.
| A | B | A and B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
3. L'opérateur OR (Ou) : Le résultat est 1 si au moins une des entrées vaut 1.
| A | B | A or B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
II. Expressions booléennes et tables de vérité
Une expression booléenne combine des variables et des opérateurs. Pour l'étudier, on dresse sa table de vérité en listant toutes les combinaisons possibles.
On décompose l'expression étape par étape :
| A | B | not B | A or (not B) |
|---|---|---|---|
| 0 | 0 | 1 | 1 |
| 0 | 1 | 0 | 0 |
| 1 | 0 | 1 | 1 |
| 1 | 1 | 0 | 1 |
III. Le OU EXCLUSIF (xor)
L'opérateur xor (eXclusive OR) est vrai si et seulement si les deux entrées ont des valeurs différentes.
| A | B | A xor B |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
IV. Application : L'addition binaire
Les opérateurs booléens permettent de réaliser des additions de nombres binaires. Pour additionner deux bits A et B :
Le bit de poids faible (Somme
S) correspond à :A xor B.Le bit de retenue (Retenue
R) correspond à :A and B.
Calculons 1 + 1 :
Entrées :
A = 1,B = 1.Somme
S:1 xor 1 = 0.Retenue
R:1 and 1 = 1.
Le résultat est 10 en binaire (2 en décimal).
V. Caractère séquentiel des opérateurs
En programmation, les opérateurs and et or sont évalués de manière "séquentielle" ou "paresseuse" (short-circuit evaluation).
Si le résultat final peut être déduit dès l'examen de la première variable, la seconde variable n'est pas examinée par l'ordinateur.
Dans A and B, si A vaut 0, le résultat sera forcément 0. L'ordinateur n'évalue pas B.
Dans A or B, si A vaut 1, le résultat sera forcément 1. La valeur de B est ignorée.