Section courante

A propos

Section administrative du site

Opérations booléennes fondamentales

Les opérations booléennes fondamentales constituent le coeur de l'algèbre de Boole. Elles permettent de manipuler des variables ne pouvant prendre que deux valeurs possibles : vrai et faux, ou encore 1 et 0. Toutes les expressions logiques utilisées en programmation, en électronique numérique et dans la conception des processeurs reposent sur un petit nombre d'opérations élémentaires.

Ces opérations servent à prendre des décisions, à contrôler l'exécution d'un programme, à effectuer des comparaisons, à simplifier des expressions logiques et à construire des circuits numériques. Les instructions conditionnelles, les boucles, les portes logiques, les filtres de recherche ainsi que les systèmes de contrôle utilisent continuellement ces opérateurs.

L'algèbre de Boole classique repose principalement sur trois opérations fondamentales :

À partir de ces trois opérations, il est possible de construire toutes les autres opérations logiques telles que le OU exclusif (XOR), le NAND, le NOR, l'implication ou l'équivalence logique.

Les trois opérations fondamentales

Les opérations booléennes de base sont les suivantes :

Nom Symbole courant Description
NON ¬A, !A, NOT A Inverse une valeur booléenne
ET A ∧ B, A AND B Vrai uniquement si les deux opérandes sont vrais
OU A ∨ B, A OR B Vrai si au moins un opérande est vrai

Ces trois opérations sont suffisantes pour exprimer n'importe quelle fonction booléenne.

La négation (NON)

L'opérateur NON inverse une valeur logique.

Si la valeur est vraie, elle devient fausse.

Si elle est fausse, elle devient vraie.

Sa définition est extrêmement simple :

A NON A
0 1
1 0

On l'écrit selon les notations :

NON A

ou

¬A

ou encore

!A

suivant le langage de programmation.

Exemple de négation

Supposons :

UtilisateurConnecté = VRAI

Alors :

NON UtilisateurConnecté

produit :

FAUX

De même :

NON FAUX

donne :

VRAI

Utilisation de NON

La négation est très utilisée pour inverser une condition.

Par exemple :

SI NON FichierExiste ALORS
   CréerFichier
FIN SI

Le programme exécute l'instruction uniquement lorsque le fichier n'existe pas.

La conjonction (ET)

L'opérateur ET exige que toutes les conditions soient vraies.

Si une seule condition est fausse, le résultat devient faux.

Sa table de vérité est :

A B A ET B
0 0 0
0 1 0
1 0 0
1 1 1

Le résultat est donc vrai uniquement dans un seul cas.

Exemple de ET

Considérons :

CompteActif = VRAI
MotDePasseValide = VRAI

L'expression :

CompteActif ET MotDePasseValide

renvoie :

VRAI

En revanche :

CompteActif = VRAI
MotDePasseValide = FAUX

produit :

FAUX

Utilisation du ET

Le ET permet de vérifier plusieurs contraintes simultanément.

Exemple :

SI
   EstMajeur
ET
   PossèdePermis
ALORS
   AutoriserLocation
FIN SI

Les deux conditions doivent être satisfaites.

La disjonction (OU)

L'opérateur OU est moins restrictif.

Il suffit qu'une seule condition soit vraie.

Sa table de vérité est :

A B A OU B
0 0 0
0 1 1
1 0 1
1 1 1

Le seul cas faux est lorsque les deux opérandes sont faux.

Exemple de OU

Supposons :

Administrateur = FAUX
SuperUtilisateur = VRAI

Alors :

Administrateur OU SuperUtilisateur

renvoie :

VRAI

L'utilisateur possède donc suffisamment de privilèges.

Utilisation du OU

Le OU est utilisé lorsqu'il existe plusieurs moyens d'obtenir un résultat.

Exemple :

SI
   PaiementCarte
OU
   PaiementComptant
ALORS
   ValiderCommande
FIN SI

L'un des deux paiements suffit.

Priorité des opérateurs

Lorsque plusieurs opérations sont présentes dans une même expression, un ordre de priorité est appliqué.

En général :

Ainsi :

NON A ET B

est interprété comme :

(NON A) ET B

et non :

NON (A ET B)

Les parenthèses permettent de lever toute ambiguïté.

Expressions booléennes

Les opérations peuvent être combinées.

Par exemple :

(A ET B)
OU
(C ET NON D)

Une expression complexe est toujours évaluée pour produire une seule valeur booléenne.

Exemple

Considérons :

A = VRAI
B = FAUX
C = VRAI
D = FAUX

L'expression :

(A ET B)
OU
(C ET NON D)

devient :

(VRAI ET FAUX)
OU
(VRAI ET VRAI)

soit :

FAUX OU VRAI

Le résultat final est :

VRAI

Évaluation d'une condition

Les langages de programmation utilisent continuellement les opérations booléennes.

Par exemple :

SI
   Solde > 0
ET
   CompteActif
ALORS

La comparaison :

Solde > 0

retourne déjà une valeur booléenne.

Le ET combine ensuite les deux résultats.

Court-circuit logique

La plupart des langages modernes utilisent l'évaluation dite à court-circuit (short-circuit evaluation).

Avec un ET :

A ET B

si A est faux, B n'est même pas évalué.

En effet, le résultat sera forcément faux.

Inversement, avec un OU :

A OU B

si A est vrai, B n'est pas évalué.

Le résultat est déjà connu.

Exemple

SI
   Pointeur ≠ NULL
ET
   Pointeur->Valeur = 10

Le second test n'est exécuté que si le pointeur est valide.

Cette technique évite de nombreuses erreurs.

Opérations dérivées

À partir de NON, ET et OU, on construit facilement d'autres opérateurs.

Les plus connus sont :

Opération Description
XOR OU exclusif
NAND NON(ET)
NOR NON(OU)
XNOR Équivalence logique
Implication Si A alors B

Ces opérateurs seront étudiés dans les chapitres suivants.

Exemple de combinaison

Une condition complexe peut s'écrire :

SI
(
   EstAdministrateur
OU
   EstModérateur
)
ET
CompteActif
ET
NON CompteSuspendu
ALORS
   AutoriserConnexion
FIN SI

L'algèbre de Boole permet d'écrire ce type de décision de façon très concise.

Utilisation dans les circuits électroniques

Les opérations booléennes ne servent pas uniquement en programmation.

Chaque opération correspond également à une porte logique.

Opération Porte logique
NON Inverseur
ET Porte AND
OU Porte OR

Ces portes constituent les briques élémentaires des processeurs modernes.

Représentation binaire

Dans un ordinateur :

0

correspond généralement à :

FAUX

et

1

à :

VRAI

Les opérations booléennes peuvent ainsi être réalisées directement sur les bits du processeur.

Exemple en pseudocode

MODULE AutoriserAccès
   SI
      CompteActif
   ET MotDePasseValide
   ET NON CompteBloqué
   ALORS
      RETOURNER VRAI
   SINON
      RETOURNER FAUX
   FIN SI
FIN MODULE

Exemple en Java

  1. boolean autoriser =
  2.         compteActif
  3.      && motDePasseValide
  4.      && !compteBloque;

Exemple en C

  1. bool autoriser =
  2.         compteActif
  3.      && motDePasseValide
  4.      && !compteBloque;

Exemple en Pascal

  1. Autoriser :=
  2.     CompteActif
  3.     and MotDePasseValide
  4.     and not CompteBloque;

Exemple en Visual Basic

  1. Autoriser =
  2.     CompteActif AndAlso
  3.     MotDePasseValide AndAlso
  4.     Not CompteBloque

Exemple en Python

  1. autoriser = (
  2.     compte_actif
  3.     and mot_de_passe_valide
  4.     and not compte_bloque
  5. )

Tableau récapitulatif

Opération Résultat
NON Inverse une valeur
ET Toutes les conditions doivent être vraies
OU Au moins une condition doit être être vraie

Bonnes pratiques

Pour écrire des expressions booléennes lisibles, il est recommandé de :

Remarque

Les opérations NON, ET et OU représentent les fondations de toute l'algèbre de Boole. Elles sont utilisées aussi bien dans les langages de programmation que dans les circuits électroniques, les processeurs, les compilateurs, les bases de données ou les systèmes de contrôle industriels. Toutes les opérations logiques plus avancées peuvent être construites à partir de ces trois opérateurs élémentaires, ce qui en fait les briques fondamentales de l'informatique moderne.



Dernière mise à jour : Jeudi, le 16 juillet 2026