Binaire,
Logique & Karnaugh
Systèmes de numération, complément à 2, portes logiques, algèbre de Boole et tableaux de Karnaugh jusqu'à 5 variables.
Systèmes de numération
Quatre bases sont couramment utilisées en informatique. Chaque position représente une puissance de la base.
Table de correspondance 0–16
| Déc | Bin (4 bits) | Oct | Hex |
|---|
Méthodes de conversion
Décimal → Binaire : divisions successives
45 ÷ 2 = 22 reste 1 ↑ lire
22 ÷ 2 = 11 reste 0 ↑ de
11 ÷ 2 = 5 reste 1 ↑ bas
5 ÷ 2 = 2 reste 1 ↑ en
2 ÷ 2 = 1 reste 0 ↑ haut
1 ÷ 2 = 0 reste 1 ↑
Résultat (de bas en haut) : 101101₂
Vérif : 32+8+4+1 = 45 ✓
Binaire → Décimal : poids des positions
1 0 1 1
× × × ×
2³ 2² 2¹ 2⁰
= 8 + 0 + 2 + 1 = 11₁₀
Décimal → Hexa : divisions par 16
254 ÷ 16 = 15 reste 14 → E ↑
15 ÷ 16 = 0 reste 15 → F ↑
Résultat : FE₁₆ = 0xFE
Binaire ↔ Hexa : groupes de 4 bits
Un chiffre hexadécimal = exactement 4 bits. La conversion est directe — aucun calcul intermédiaire.
1010 1111 0011₂
↓ ↓ ↓
A F 3 → 0xAF3
Chaque groupe indépendamment :
1010 = A (10)
1111 = F (15)
0011 = 3
Binaire ↔ Octal : groupes de 3 bits
101 111 010₂
↓ ↓ ↓
5 7 2 → 572₈
Chaque groupe :
101 = 5
111 = 7
010 = 2
Pour convertir Hexa → Binaire : remplacer chaque chiffre hex par son équivalent 4 bits. Pour Octal → Binaire : remplacer chaque chiffre octal par son équivalent 3 bits.
Complément à 2
Méthode standard pour représenter les entiers négatifs en binaire. Le bit de poids fort (MSB) indique le signe : 0 = positif, 1 = négatif.
Plage de valeurs sur N bits
| N bits | Min | Max | Plage |
|---|---|---|---|
| 4 | -8 | +7 | -2³ à 2³-1 |
| 8 | -128 | +127 | -2⁷ à 2⁷-1 |
| 16 | -32768 | +32767 | -2¹⁵ à 2¹⁵-1 |
| 32 | -2 147 483 648 | +2 147 483 647 | -2³¹ à 2³¹-1 |
Structure d'un mot de 8 bits
Méthode : positif → complément à 2
+5 sur 4 bits = 01010101 → 10101010 + 0001 = 1011 → représente -51011 en complément à 2 (4 bits)
MSB = 1 → négatif
Méthode rapide : -2^(N-1) + somme des autres bits
= -2³ + 0×2² + 1×2¹ + 1×2⁰
= -8 + 0 + 2 + 1 = -5 ✓
Méthode alternative (inverser + ajouter 1) :
1011 → inverser → 0100 → +1 → 0101 = 5
Donc 1011 = -5 ✓
Portes logiques
Les portes logiques sont les briques élémentaires des circuits numériques. Elles réalisent les opérations de l'algèbre de Boole.
Algèbre de Boole
Ensemble de lois permettant de simplifier les expressions logiques avant de les implémenter en circuit.
F = A·B + A·B̄·C + Ā·B
= A·(B + B̄·C) + Ā·B
↓ absorption : B + B̄·C = B + C
= A·(B + C) + Ā·B
= A·B + A·C + Ā·B
= B·(A + Ā) + A·C
= B·1 + A·C
= B + A·C
Théorèmes de De Morgan
Permettent de transformer un AND en OR et vice-versa, très utile pour la simplification et l'implémentation avec des portes NAND/NOR uniquement.
Méthode d'application
F = A·B + C
F̄ = De Morgan sur (A·B + C)
= (A·B)̄ · C̄
= (Ā + B̄) · C̄
Toute fonction logique peut être implémentée avec des NAND uniquement (ou NOR uniquement) grâce à De Morgan. C'est la base des circuits CMOS.
Principe & règles de groupement
Le tableau de Karnaugh est un outil graphique de simplification des fonctions logiques. Il évite l'algèbre de Boole en visualisant les regroupements de 1.
Règles impératives
Lire l'expression d'un groupe
Un groupe de 2ⁿ cellules élimine n variables. Un groupe de 4 dans un tableau à 4 variables donne un terme à 2 littéraux.
Tableau de Karnaugh — 2 variables
2 variables (A, B) → 4 cellules (2²). Groupes possibles : 1, 2 ou 4 cellules.
Exemple : F = Σm(1,2,3)
| A\B | B=0 | B=1 |
|---|---|---|
| A=0 | 0 | 1 |
| A=1 | 1 | 1 |
Ā (m1,m3)B̄ ... non, BStructure générale 2 variables
| A\B | 0 | 1 |
|---|---|---|
| 0 | m0 ĀB̄ | m1 ĀB |
| 1 | m2 AB̄ | m3 AB |
Sur 2 variables, la simplification maximale est un groupe de 4 cellules (F = 1 constant), ou deux groupes de 2 cellules.
Tableau de Karnaugh — 3 variables
3 variables (A, B, C) → 8 cellules (2³). Les colonnes suivent le code Gray : 00, 01, 11, 10.
Exemple : F = Σm(0,2,4,5,6)
| A\BC | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| A=0 | 1 | 0 | 0 | 1 |
| A=1 | 1 | 1 | 0 | 1 |
C̄A·B̄... non → A car C varie et B varie → reste AStructure générale 3 variables
| A\BC | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 0 | m0 | m1 | m3 | m2 |
| 1 | m4 | m5 | m7 | m6 |
Code Gray obligatoire : les colonnes sont 00, 01, 11, 10 et non 00, 01, 10, 11. L'ordre est essentiel pour que les cellules adjacentes ne diffèrent que d'un bit.
Toricité : les cellules m0 et m2 (bords gauche et droit de la même ligne) sont adjacentes. Même chose pour m4 et m6.
Tableau de Karnaugh — 4 variables
4 variables (A, B, C, D) → 16 cellules (2⁴). Format 4×4 avec code Gray sur les deux axes.
Exemple : F = Σm(0,1,3,5,7,8,9,11)
| AB\CD | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 00 | 1 | 1 | 1 | 0 |
| 01 | 0 | 1 | 1 | 0 |
| 11 | 0 | 0 | 0 | 0 |
| 10 | 1 | 1 | 1 | 0 |
B̄·D̄Ā·B̄·D... mais couvert → vérifierStructure générale 4 variables
| AB\CD | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 00 | m0 | m1 | m3 | m2 |
| 01 | m4 | m5 | m7 | m6 |
| 11 | m12 | m13 | m15 | m14 |
| 10 | m8 | m9 | m11 | m10 |
Toricité 4 variables : les 4 coins (m0, m2, m8, m10) forment un groupe valide de 4. Les colonnes extrêmes (CD=00 et CD=10) sont adjacentes. Les lignes extrêmes (AB=00 et AB=10) sont adjacentes.
Tableau de Karnaugh — 5 variables
5 variables (A, B, C, D, E) → 32 cellules (2⁵). Représenté comme deux tableaux 4×4 juxtaposés : un pour A=0, un pour A=1. Un groupe peut "traverser" les deux tableaux.
À 5 variables, le tableau est physiquement deux Karnaugh 4 variables posés côte à côte. Les cellules en miroir entre les deux tableaux (même position) sont adjacentes et peuvent former un groupe.
Exemple : F = Σm(0,2,8,10,16,18,24,26)
A = 0
| BC\DE | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 00 | 1 | 0 | 0 | 1 |
| 01 | 0 | 0 | 0 | 0 |
| 11 | 0 | 0 | 0 | 0 |
| 10 | 1 | 0 | 0 | 1 |
A = 1
| BC\DE | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 00 | 1 | 0 | 0 | 1 |
| 01 | 0 | 0 | 0 | 0 |
| 11 | 0 | 0 | 0 | 0 |
| 10 | 1 | 0 | 0 | 1 |
B̄·D̄·ĒUn groupe qui apparaît identique dans les deux tableaux (A=0 et A=1) élimine la variable A en plus des autres.
Cheat sheet
Puissances de 2
| 2⁰ | 1 |
| 2¹ | 2 |
| 2² | 4 |
| 2³ | 8 |
| 2⁴ | 16 |
| 2⁵ | 32 |
| 2⁶ | 64 |
| 2⁷ | 128 |
| 2⁸ | 256 |
Karnaugh — tailles
| 1 var | 2 cases, 1×2 |
| 2 vars | 4 cases, 2×2 |
| 3 vars | 8 cases, 2×4 |
| 4 vars | 16 cases, 4×4 |
| 5 vars | 32 cases, 2× (4×4) |
| Groupe taille n | élimine log₂(n) vars |
Portes — symboles
| AND | A · B |
| OR | A + B |
| NOT | Ā |
| NAND | A·B̄ |
| NOR | A+B̄ |
| XOR | A ⊕ B |
| XNOR | A ⊕ B̄ |
De Morgan
| A·B̄ | = Ā + B̄ |
| A+B̄ | = Ā · B̄ |
| NAND universel | NOT = NAND(A,A) |
| NOR universel | NOT = NOR(A,A) |