Portes logiques

Découvre comment les portes ET, OU, NON, XOR, NAND et NOR transforment des 1 et des 0 en décisions, et comment trouver la sortie d'un petit circuit.

Avancé25 minLeçon

Définition

Une porte logique est un minuscule circuit électronique avec une ou deux entrées et une sortie. Chaque entrée et chaque sortie vaut soit 1, soit 0 :
  • 1 = tension présente (haute), ce qui veut dire vrai
  • 0 = pas de tension (basse), ce qui veut dire faux
Chaque porte effectue une opération booléenne. Les portes sont la version matérielle des opérations ET, OU et NON vues dans les leçons précédentes.
Les portes à deux entrées (entrées AA et BB, les lignes commencent par 0,00, 0) :
AABBETOUXORNANDNOR
0000011
0101110
1001110
1111000
La porte NON (aussi appelée inverseur) n'a qu'une entrée et l'inverse : l'entrée 0 donne la sortie 1, l'entrée 1 donne la sortie 0.
Comment les retenir :
  • ET (AND) : sortie 1 seulement si les deux entrées valent 1
  • OU (OR) : sortie 1 si au moins une entrée vaut 1
  • XOR (OU exclusif) : sortie 1 si les entrées sont différentes
  • NAND (NON-ET) : le contraire de ET, sortie 0 seulement si les deux entrées valent 1
  • NOR (NON-OU) : le contraire de OU, sortie 1 seulement si les deux entrées valent 0
Notation : les ingénieurs écrivent souvent A⋅BA \cdot B pour ET, A+BA + B pour OU et A‾\overline{A} pour NON. Cela veut dire exactement la même chose que A∧BA \land B, A∨BA \lor B et ¬A\neg A. XOR s'écrit A⊕BA \oplus B, NAND s'écrit A⋅B‾\overline{A \cdot B} et NOR s'écrit A+B‾\overline{A + B}. Attention : ici 1+1=11 + 1 = 1, car ++ veut dire OU.
Un circuit relie des portes : la sortie d'une porte devient une entrée de la suivante. Pour trouver la sortie finale, va des entrées vers la sortie, une porte après l'autre.
Le tableau interactif de cette leçon appelle les entrées AA et BB et écrit 1 et 0. Il dessine le symbole de chaque porte, NAND et NOR compris.

Essaie tout de suite

Quelle porte donne la sortie 1 seulement quand les deux entrées valent 1 ?

Exemples résolus

Les entrées sont A=1A = 1 et B=0B = 0. Trouve la sortie d'une porte ET, OU, XOR, NAND et NOR.

1

Porte ET

ET demande que les deux entrées vaillent 1, mais B=0B = 0 → ET : 00

2

Porte OU

OU demande au moins un 1, et A=1A = 1 → OU : 11

3

Porte XOR

Les entrées 11 et 00 sont différentes → XOR : 11

4

Porte NAND

NAND est le contraire de ET : ET a donné 00, on l'inverse → NAND : 11

5

Porte NOR

NOR est le contraire de OU : OU a donné 11, on l'inverse → NOR : 00

Erreurs courantes

Croire qu'une porte OU donne 00 quand les deux entrées valent 11

Pourquoi c'est faux: Ça, c'est la porte XOR. OU vaut 1 si au moins une entrée vaut 1, et cela inclut le cas où les deux valent 1.

Correct: OU : 1∨1=11 \lor 1 = 1. XOR : 1⊕1=01 \oplus 1 = 0. Seul XOR exige que les entrées soient différentes.

Lire A+BA + B comme une addition ordinaire et écrire 1+1=21 + 1 = 2

Pourquoi c'est faux: Dans la notation des portes, ++ veut dire OU, et la sortie d'une porte ne peut valoir que 0 ou 1.

Correct: Avec les portes, 1+1=11 + 1 = 1 (OU). La valeur 2 n'apparaît que lorsqu'on additionne des nombres binaires, et elle s'écrit alors 1010 avec un chiffre de retenue.

Prendre NAND pour NON A ET NON B, c'est-à-dire A‾⋅B‾\overline{A} \cdot \overline{B}

Pourquoi c'est faux: NAND inverse la sortie de ET, pas les entrées. Pour A=1A = 1, B=0B = 0 : NAND donne 1⋅0‾=1\overline{1 \cdot 0} = 1, mais 1‾⋅0‾=0⋅1=0\overline{1} \cdot \overline{0} = 0 \cdot 1 = 0.

Correct: NAND =A⋅B‾= \overline{A \cdot B} : d'abord ET, puis NON. La barre couvre tout le produit.

Envoyer les entrées de départ dans la dernière porte d'un circuit

Pourquoi c'est faux: Dans un circuit, chaque porte reçoit seulement les fils qui lui sont reliés. La dernière porte reçoit en général les sorties des portes précédentes, pas A, B et C.

Correct: Va des entrées vers la sortie, écris la sortie de chaque porte à côté d'elle et utilise ces valeurs pour la porte suivante.

Visuel interactif

Table de vérité

A ∧ B
ABA ∧ B
000
010
100
111

1= Vrai0= Faux

Bac à sable interactif

Calculatrice d'expressions

Essaie ceux-ci :

Historique

Aucun calcul pour l'instant

Exercices pratiques

18 exercices
Problème 1 sur 18
Facile

Quelle porte donne la sortie 1 seulement quand les deux entrées valent 1 ?

Pourquoi c'est important

Chaque appareil numérique que tu possèdes est construit avec des portes logiques :
  • Puces électroniques : un processeur contient des milliards de transistors câblés en portes, et tout ce qu'il fait (additionner, comparer, mémoriser) se ramène à ET, OU et NON sur des 1 et des 0
  • Additionner des nombres : deux portes, un XOR et un ET, suffisent pour additionner deux chiffres binaires, et des chaînes de tels circuits additionnent des nombres entiers
  • Alarmes et systèmes de sécurité : une alarme sonne quand elle est activée ET que la porte d'entrée OU une fenêtre est ouverte
  • Voitures et machines : le témoin de ceinture s'allume quand le moteur tourne ET que la ceinture n'est PAS attachée ; une presse ne fonctionne que si les deux mains appuient sur deux boutons (ET)
  • Éclairage à la maison : une lampe qu'on peut allumer de deux endroits (escalier, couloir) est un circuit XOR
Dans les leçons précédentes, tu as écrit des expressions booléennes sur papier. Les portes logiques sont ces mêmes expressions construites en matériel : savoir lire un circuit, c'est savoir lire la langue des ordinateurs.

Applications dans le monde réel

Les alarmes

Une alarme de maison est un petit circuit logique : les capteurs donnent 1 ou 0, les portes décident si la sirène reçoit 1.

Exemple:

Avec l'interrupteur d'activation AA, le capteur de la porte d'entrée DD et le capteur de fenêtre WW, l'alarme sonne quand Y=A∧(D∨W)=1Y = A \land (D \lor W) = 1.

1Essaie par toi-même

Une alarme utilise Y=A∧(D∨W)Y = A \land (D \lor W) : A=1A = 1 quand le système est activé, D=1D = 1 quand la porte d'entrée est ouverte, W=1W = 1 quand la fenêtre est ouverte.

Pour combien de combinaisons d'entrées possibles l'alarme sonne-t-elle ?

Étape 1 : Écris l'expression mathématique

Écris le nombre de combinaisons d'entrées comme une puissance de 2 :

Additionner dans une puce

Chaque addition d'un ordinateur est construite avec des demi-additionneurs et des additionneurs complets faits de portes.

Exemple:

Un demi-additionneur calcule le chiffre de somme S=A⊕BS = A \oplus B et le chiffre de retenue C=A∧BC = A \land B de deux chiffres binaires.

2Essaie par toi-même

Un demi-additionneur reçoit les entrées A=1A = 1 et B=1B = 1. Il donne S=A⊕BS = A \oplus B et C=A∧BC = A \land B, et le résultat se lit comme le nombre binaire CSCS.

Que valent S et C, et quel nombre ordinaire le résultat représente-t-il ?

Étape 1 : Écris l'expression mathématique

Écris l'addition que fait le circuit :

Construire des puces avec des portes NAND

Les fabricants de puces aiment les portes NAND, car on peut construire toutes les autres portes avec des NAND seulement.

Exemple:

Relie les deux entrées d'une porte NAND au même signal AA : la sortie vaut A⋅A‾=A‾\overline{A \cdot A} = \overline{A}, elle fonctionne donc comme une porte NON.

3Essaie par toi-même

Un petit boîtier de puce contient 4 portes NAND. Une porte NON demande 1 porte NAND, une porte ET en demande 2 (une NAND suivie d'une NAND utilisée comme NON). Une conceptrice a besoin de 3 portes ET et de 2 portes NON.

De combien de portes NAND et de combien de boîtiers a-t-elle besoin ?

Étape 1 : Écris l'expression mathématique

Écris le nombre de portes NAND en un seul calcul :

Points clés

  • 1Une porte logique reçoit des entrées qui valent 1 (tension présente) ou 0 (pas de tension) et donne une sortie, elle aussi 1 ou 0
  • 2ET donne 1 seulement si les deux entrées valent 1 ; OU donne 1 si au moins une entrée vaut 1 ; NON inverse son unique entrée
  • 3XOR donne 1 si les entrées sont différentes ; NAND et NOR sont les contraires de ET et de OU
  • 4Notation des portes : A⋅BA \cdot B (ET), A+BA + B (OU), A‾\overline{A} (NON), A⊕BA \oplus B (XOR), et ici 1+1=11 + 1 = 1
  • 5Pour trouver la sortie d'un circuit, va des entrées vers la sortie et note la sortie de chaque porte
  • 6Nomme la sortie de chaque porte par une expression pour obtenir l'expression booléenne de tout le circuit

Questions fréquentes

Dans une puce, il n'y a que des tensions. Une tension haute représente 1 (vrai) et une tension basse 0 (faux). N'utiliser que deux niveaux rend les circuits rapides et fiables, car un signal un peu plus faible se lit encore clairement comme 1.
Dans une puce, il n'y a que des tensions. Une tension haute représente 1 (vrai) et une tension basse 0 (faux). N'utiliser que deux niveaux rend les circuits rapides et fiables, car un signal un peu plus faible se lit encore clairement comme 1.
Elles ne diffèrent que sur une ligne : quand les deux entrées valent 1. OU donne 11 (au moins une est allumée), XOR donne 00 (les entrées ne sont pas différentes). XOR, c'est la porte soit l'un, soit l'autre, mais pas les deux.
On peut construire toutes les autres portes uniquement avec des NAND. Par exemple, une NAND dont les deux entrées sont reliées est une porte NON. Une usine peut donc fabriquer des puces avec un seul type de porte. Tu verras l'algèbre qui l'explique dans la leçon Algèbre de Boole.
Oui, avec 0 et 1 : ET vaut A×BA \times B, NON vaut 1−A1 - A, OU vaut A+B−A×BA + B - A \times B et XOR vaut A+B−2×A×BA + B - 2 \times A \times B. Par exemple, OU pour 1,11, 1 donne 1+1−1=11 + 1 - 1 = 1. Essaie dans la calculatrice.

Glossaire

Porte logique
Un circuit électronique qui effectue une opération booléenne sur des entrées valant 1 ou 0
Entrée / sortie
Les signaux qui entrent dans une porte et le signal unique qui en sort
Circuit
Des portes reliées par des fils, où la sortie d'une porte est une entrée d'une autre
Inverseur
Un autre nom de la porte NON, qui change 1 en 0 et 0 en 1
OU exclusif (XOR)
Une porte dont la sortie vaut 1 quand ses entrées sont différentes, notée A⊕BA \oplus B
Demi-additionneur
Un circuit formé d'une porte XOR et d'une porte ET qui additionne deux chiffres binaires : S=A⊕BS = A \oplus B, C=A∧BC = A \land B

Carte des formules

ET

Y=A⋅B=A∧BY = A \cdot B = A \land B

1 seulement si les deux entrées valent 1

OU

Y=A+B=A∨BY = A + B = A \lor B

1 si au moins une entrée vaut 1

NON

Y=A‾=¬AY = \overline{A} = \neg A

Inverse l'entrée

XOR

Y=A⊕BY = A \oplus B

1 si les entrées sont différentes

NAND

Y=A⋅B‾Y = \overline{A \cdot B}

Contraire de ET : 0 seulement si les deux entrées valent 1

NOR

Y=A+B‾Y = \overline{A + B}

Contraire de OU : 1 seulement si les deux entrées valent 0

Plus sur ce sujet