Sciences de l'Ingénieur · Bac Sciences et Technologies Mécaniques

Les Systèmes Combinatoires

L'algèbre de Boole, les tables de vérité et les tableaux de Karnaugh pour analyser et simplifier les fonctions logiques d'un système automatisé.

Objectifs d'apprentissage

  • Établir la table de vérité d'une fonction logique à partir d'un cahier des charges
  • Utiliser les opérateurs de base (ET, OU, NON) et universels (NAND, NOR) et tracer leurs symboles normalisés
  • Appliquer les théorèmes de l'algèbre de Boole (commutativité, distributivité, absorption, lois de De Morgan) pour transformer une expression logique
  • Construire un tableau de Karnaugh à 2, 3 ou 4 variables et y placer les valeurs d'une table de vérité
  • Simplifier une fonction logique par regroupement de cases adjacentes (1, 2, 4, 8 cases) dans un Karnaugh
  • Passer de l'équation logique simplifiée au logigramme (schéma à portes logiques)
  • Reconnaître les fonctions combinatoires usuelles : multiplexeur, décodeur, additionneur, comparateur

Formules et résultats clés

Opérateurs de base et universels

Un système combinatoire est un circuit dont chaque sortie ne dépend que des entrées présentes à l'instant considéré, sans aucune mémoire de l'état passé. Les trois opérateurs de base sont ET (produit logique, noté ·), OU (somme logique, noté +) et NON (complément, noté avec une barre au-dessus). Les opérateurs NAND et NORsont dits universels : n'importe quelle fonction logique peut être réalisée en n'utilisant qu'un seul de ces deux opérateurs.

Théorèmes de l'algèbre de Boole

Commutativité : AB=BAA \cdot B = B \cdot A, A+B=B+AA + B = B + A.

Distributivité : A(B+C)=AB+ACA \cdot (B + C) = A \cdot B + A \cdot C.

Absorption : A+AB=AA + A \cdot B = A, et A(A+B)=AA \cdot (A + B) = A.

Complémentarité : A+A=1A + \overline{A} = 1, et AA=0A \cdot \overline{A} = 0.

Lois de De Morgan : AB=A+B\overline{A \cdot B} = \overline{A} + \overline{B}, et A+B=AB\overline{A + B} = \overline{A} \cdot \overline{B}.

Tableau de Karnaugh

Le tableau de Karnaugh range les 2ⁿ combinaisons de n variables dans une grille où deux cases adjacentes (y compris sur les bords opposés, le tableau étant cyclique) ne diffèrent que par la valeur d'une seule variable — les entêtes suivent l'ordre du code Gray (00, 01, 11, 10) et non l'ordre binaire naturel. On y reporte 1 dans chaque case où la fonction vaut 1, puis on regroupe les 1 adjacents par blocs de taille une puissance de 2 (1, 2, 4, 8 cases), en cherchant systématiquement les plus grandsgroupements possibles. Chaque groupement élimine la ou les variables qui changent de valeur à l'intérieur du bloc.

Fonctions combinatoires usuelles

  • Multiplexeur : sélectionne une des 2ⁿ entrées de données vers une sortie unique, selon un code de sélection à n bits.
  • Décodeur : active une seule sortie parmi 2ⁿ selon un code d'entrée à n bits — fonction inverse du multiplexeur.
  • Additionneur : le demi-additionneur combine 2 bits (somme et retenue) ; l'additionneur complet ajoute en plus une retenue entrante.
  • Comparateur : compare deux nombres binaires et produit trois sorties possibles (égal, supérieur, inférieur).

Erreurs fréquentes

1

Oublier qu'un regroupement dans un Karnaugh doit toujours contenir une puissance de 2 cases (1, 2, 4, 8...) — un groupe de 3 cases n'a aucun sens et ne simplifie rien.

2

Mal appliquer les lois de De Morgan : NON(A·B) = NON(A) + NON(B), et NON(A+B) = NON(A)·NON(B) — inverser un produit donne une somme des compléments, pas un produit des compléments.

3

Oublier l'ordre du code Gray sur les entêtes d'un tableau de Karnaugh (00, 01, 11, 10, et non 00, 01, 10, 11) : sans cet ordre, les cases physiquement adjacentes ne correspondent plus à une seule variable qui change.

4

Ne pas exploiter le caractère cyclique du tableau : les cases des bords opposés (première et dernière colonne, première et dernière ligne) sont adjacentes et peuvent former un groupement valide.

5

Chercher le plus petit nombre de groupements plutôt que les plus grands groupements possibles : une simplification minimale privilégie toujours les groupes les plus grands, quitte à ce qu'ils se chevauchent.

6

Confondre un multiplexeur (sélectionne une entrée parmi plusieurs vers une seule sortie) et un décodeur (active une seule sortie parmi plusieurs selon un code d'entrée) — ce sont des fonctions inverses l'une de l'autre.

Exemple corrigé — Simplifier une fonction logique

Énoncé

Simplifier l'expression S=AB+ABS = \overline{A} \cdot \overline{B} + \overline{A} \cdot B à l'aide de l'algèbre de Boole.

Correction

S=AB+AB=A(B+B)S = \overline{A} \cdot \overline{B} + \overline{A} \cdot B = \overline{A} \cdot (\overline{B} + B) [distributivité, mise en facteur de A\overline{A}].

=A1= \overline{A} \cdot 1 [complémentarité : B+B=1\overline{B} + B = 1] =A= \overline{A}.

La fonction ne dépend en réalité que de A (inversé) ; B n'a aucune influence sur la sortie, ce que confirmerait un tableau de Karnaugh où les deux cases correspondant à A=0 forment un groupement unique éliminant B.

3 exercices pour t'entraîner

Exercice 1

Facile

Écrire la table de vérité de la fonction S=AB+ACS = A \cdot B + \overline{A} \cdot C pour les entrées A, B, C, puis donner la valeur de S pour A=1, B=0, C=1.

Voir la correction

Pour A=1, B=0, C=1 : AB=10=0A \cdot B = 1 \cdot 0 = 0, et AC=01=0\overline{A} \cdot C = 0 \cdot 1 = 0. Donc S=0+0=0S = 0 + 0 = 0. La table complète comporte 8 lignes (2³ combinaisons) ; S vaut 1 chaque fois que A=1 ET B=1 (indépendamment de C), ou chaque fois que A=0 ET C=1 (indépendamment de B).

Exercice 2

Moyen

Simplifier l'expression S=AB+ABS = A \cdot B + A \cdot \overline{B} à l'aide des théorèmes de l'algèbre de Boole (sans Karnaugh).

Voir la correction

S=AB+AB=A(B+B)S = A \cdot B + A \cdot \overline{B} = A \cdot (B + \overline{B}) [distributivité, mise en facteur de A] =A1= A \cdot 1 [complémentarité : B+B=1B + \overline{B} = 1] =A= A. La fonction ne dépend en réalité que de A ; B n'a aucune influence sur la sortie.

Exercice 3

Difficile

Une fonction de 3 variables A, B, C vaut 1 pour les combinaisons suivantes (dans l'ordre ABC) : 010, 011, 110, 111, et vaut 0 partout ailleurs. Construire le tableau de Karnaugh et donner l'équation simplifiée.

Voir la correction

Les 4 combinaisons à 1 sont celles où B=1, quelles que soient A et C (010, 011, 110, 111 ont toutes B=1). Dans le Karnaugh, ces 4 cases forment un unique groupement de 4 cases adjacentes, qui élimine A et C. L'équation simplifiée est S=BS = B.

3 exercices, c'est un début.

Orka en génère autant que tu veux sur ce chapitre, à ton niveau, avec correction détaillée étape par étape.

Continue gratuitement sur Orka

Va plus loin sur ce chapitre

Questions fréquentes

Pourquoi les opérateurs NAND et NOR sont-ils dits « universels » ?

Un opérateur est dit universel si n'importe quelle fonction logique, aussi complexe soit-elle, peut être réalisée en n'utilisant que cet opérateur seul, répété autant de fois que nécessaire. C'est le cas de NAND (NON-ET) et de NOR (NON-OU) : en les combinant entre eux de façon appropriée, on peut reconstruire les opérateurs ET, OU et NON. Cette propriété est très utile en fabrication de circuits intégrés, où il est plus économique de ne produire qu'un seul type de porte logique en très grande quantité plutôt que plusieurs types différents.

Pourquoi le tableau de Karnaugh utilise-t-il l'ordre du code Gray et pas l'ordre binaire naturel ?

Le code Gray a la propriété que deux valeurs consécutives ne diffèrent jamais que d'un seul bit (00, 01, 11, 10 — alors que l'ordre binaire naturel serait 00, 01, 10, 11, où passer de 01 à 10 change deux bits à la fois). Cette propriété est indispensable pour que deux cases physiquement adjacentes dans le tableau ne diffèrent effectivement que par la valeur d'une seule variable : c'est cette adjacence à une seule variable près qui permet de regrouper des cases et de simplifier l'équation logique en éliminant la variable qui change.

Quelle est la différence entre un multiplexeur et un décodeur ?

Un multiplexeur possède plusieurs entrées de données et une seule sortie : selon un code de sélection, il aiguille l'une des entrées vers la sortie unique — c'est une fonction de sélection. Un décodeur fait l'inverse : il possède une entrée codée (souvent binaire) et plusieurs sorties, et active une seule sortie parmi toutes selon la valeur du code d'entrée — c'est une fonction de distribution. Les deux fonctions sont complémentaires et souvent utilisées ensemble dans une architecture numérique (par exemple pour sélectionner puis piloter un afficheur parmi plusieurs).