Portes logiques


Portes logiques : les LEGO du monde numérique

Si le processeur est le cerveau de l’ordinateur, les portes logiques sont ses neurones. Invisibles à l’œil nu, minuscules mais omniprésentes, elles sont à l’origine de chaque calcul, d’une requête Google jusqu’au démarrage de votre cafetière connectée. Sans elles, vos mèmes, vos mails et vos pannes de disque n’existeraient tout simplement pas.

🧱 De quoi sont faites les portes logiques ?

À la base, une porte logique est un minuscule circuit électronique composé de transistors. Ces transistors, comme des interrupteurs, contrôlent le passage du courant électrique selon des règles logiques strictes. Un courant passe = 1. Pas de courant = 0. Simple. Brutal. Binaire.

🔢 Les types de portes logiques (avec leur table de vérité)

▶ Porte AND (ET)

  • ✔ Sortie = 1 si toutes les entrées sont à 1.
A | B | OUT
--|---|----
0 | 0 |  0
0 | 1 |  0
1 | 0 |  0
1 | 1 |  1
    

▶ Porte OR (OU)

  • ✔ Sortie = 1 si au moins une entrée est à 1.
A | B | OUT
--|---|----
0 | 0 |  0
0 | 1 |  1
1 | 0 |  1
1 | 1 |  1
    

▶ Porte NOT (NON)

  • ✔ Inverse la valeur binaire : 1 devient 0 et 0 devient 1.
A | OUT
--|----
0 |  1
1 |  0
    

▶ Porte XOR (OU exclusif)

  • ✔ Sortie = 1 si les entrées sont différentes.
A | B | OUT
--|---|----
0 | 0 |  0
0 | 1 |  1
1 | 0 |  1
1 | 1 |  0
    

▶ Porte NAND (NON-ET)

  • ✔ Sortie = 0 uniquement si toutes les entrées sont à 1.

▶ Porte NOR (NON-OU)

  • ✔ Sortie = 1 uniquement si toutes les entrées sont à 0.

💻 Le CPU : un tas de portes logiques bien organisées

Un processeur (CPU) n’est rien de plus qu’un gigantesque réseau de portes logiques agencées pour effectuer :

  • ➤ Des opérations arithmétiques (additions, soustractions…)
  • ➤ Des comparaisons (inférieur, égal, etc.)
  • ➤ Des déplacements de bits (shifts)

Exemple : une addition binaire utilise des additionneurs complets composés de portes XOR, AND, OR. Le cerveau numérique bat à coups de logique binaire.

🧠 En programmation : opérateurs logiques

Quand vous écrivez :


if (user.isAdmin && user.isLoggedIn) {
    grantAccess();
}

vous utilisez en réalité une porte AND. Voici les équivalents logiques :

  • && ou and = ET logique
  • || ou or = OU logique
  • ! ou not = NON logique
  • ^ = XOR (dans certains langages)

Les tests conditionnels sont des traductions directes du monde du silicium vers le monde du code.

✨ Quelques exemples concrets pour briller (ou paniquer) en société

🖥️ RAID 5 et le XOR de la survie

Supposons trois disques stockant un octet chacun :

Disque A : 10110110
Disque B : 11001011
Parité   : A XOR B
         = 01111101
    

Disque B explose en vol (RIP petit SSD). Pour le reconstruire :

Disque A : 10110110
Parité   : 01111101
Restauré : A XOR Parité
         = 11001011 ✔
    

Une opération binaire, quelques portes XOR, et hop, on ressuscite les données comme par magie. Sans les zombies.

🚀 Adresse IP et masque réseau

Adresse IP : 192.168.1.45 ⇒ binaire : 11000000.10101000.00000001.00101101
Masque : 255.255.255.0 ⇒ binaire : 11111111.11111111.11111111.00000000

Opération AND pour obtenir l’adresse réseau :

11000000.10101000.00000001.00101101
AND
11111111.11111111.11111111.00000000
=
11000000.10101000.00000001.00000000
⇒ Adresse réseau : 192.168.1.0

Oui, une simple porte AND empêche votre imprimante de parler à l’imprimante de votre voisin. Ouf.

🔐 Chiffrement XOR ultra-basique

Message : 10101100
Clé : 11011010
Chiffré : message XOR clé = 01110110

Pour déchiffrer ? On refait XOR avec la même clé :

01110110 XOR 11011010 = 10101100 ✔

Julie la hackeuse peut intercepter les données… mais sans la clé, elle lit du bruit. C’est comme lire une ordonnance de médecin sous acide. Bon courage Julie.

⚡ Bonus : logique combinatoire vs. logique séquentielle

Les portes logiques combinatoires (comme celles vues ci-dessus) donnent une sortie instantanée. Mais les circuits plus complexes mémorisent aussi des états (via des bascules). Par exemple :

  • ▶ Compteurs binaires : pour savoir combien de fois vous avez tenté de deviner un mot de passe avant de vous faire bloquer.
  • ▶ Registres de données : pour stocker temporairement ce que vous saisissez, avant que le formulaire plante.

En bref : chaque bit voyage dans un monde plein de portes logiques, où il se fait trier, tester, inverser et combiner… avant de devenir une requête web, une erreur RAID ou une session SSH. Beauté froide mais puissante. Comme la belle-mère de l’informatique.