Vous êtes sur la page 1sur 36

Structure

Machine 1
04 – Algèbre de Boole

ENS KATEB

1
Introduction
Introduction générale :
Tout ordinateur est conçu à partir de circuits intégrés qui ont tous
une fonction spécialisée (ALU, mémoire, circuit décodant les
instructions etc.)
Ces circuits sont fait à partir de circuits logiques dont le but est
d’exécuter des opérations sur des variables logiques (binaires)
Les circuits logiques sont élaborés à partir de composants
électroniques (transistors, diodes, condensateurs, …)
Types de circuits logiques:
Combinatoires
Séquentiels

2
Introduction
Circuit intégré : ensemble de composants électroniques (transistors,
diodes, condensateurs, …) qui permet de réaliser des circuits logiques
Circuit Logique : Ensemble de fonctions logiques où chacune est
définit par les entrées et les sorties du circuit, ainsi chaque état des
sorties en fonction des entrées doit être précisé
Les fonctions d’un circuit sont élaboré grâce à ce qu’on appelle
Algèbre de Boole qui représente le support théorique des circuits
combinatoires

3
Algèbre de Boole
Définition :
Ensemble de règles et théorèmes qui traite des variables à deux état
(0 ou 1, Vrais ou Faux) dites booléens à l’aide d’un ensemble définit
des opérations logiques NON, ET et OU,

La table de vérité : est une table qui permet de visualiser les valeurs
des variables d’entrée et les valeurs des variables de sortie
Les opérations logiques de base :
NON : soit X variable booléen, sa négation, appelée complément,
est notée Xɸɸ dont sa valeur est l’inverse de la valeur de X.
X Xɸ
0 1 X Xɸ
1 0

4
Algèbre de Boole
Les opérations logiques de base :
ET : soit X et Y deux variables logiques, la valeur de X ET Y (notée
aussi X . Y ou XY) donne 1 si X=1 et Y=1
0 sinon

X Y X ET Y
X
0 0 0 X ET Y
Y
0 1 0
1 0 0
1 1 1

5
Algèbre de Boole
Les opérations logiques de base :
OU : soit X et Y deux variables logiques, la valeur de X OU Y (notée
aussi (X + Y) donne 0 si X=0 et Y=0
1 sinon

X Y X OU Y
X
0 0 0 X OU Y
Y
0 1 1
1 0 1
1 1 1

6
Algèbre de Boole
Fonction logique : est une combinaison de variables logiques reliées
par des opérateurs logiques (ET, OU et NON)
Exemple : soit a, b, c trois variables booléens
Voici quelques exemples de fonctions logiques :
F1 = ab + aɸb, F2 = (a+b)(aɸb+bcɸ)
F3 = (ab+c)(aɸ bɸc+abɸc)(ab+aɸbcɸ)
La valeur d’une fonction logique est égale à 0 ou 1 selon les valeurs
des variables constituant la fonction, pour trouver les valeurs possible
il faut dresser la table de vérité
Le nombre des valeurs possible = 2n ou n est le nombre des variables

7
Algèbre de Boole
Table de vérité :
F1 = ab + aɸb, 2 variables F2 = (a+b)(aɸb+bcɸ) 3 variables => 8 valeurs
=> 4 valeurs possibles
a b c aɸb bcɸ aɸb+bcɸ a+b F1
a b ab aɸb F1 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1 0 0 0 0 0
0 1 0 1 1 0 1 0 1 1 1 1 1
1 0 0 0 0 0 1 1 1 0 1 1 1
1 1 1 0 1 1 0 0 0 0 0 1 0
1 0 1 0 0 0 1 0
1 1 0 0 1 1 1 1
1 1 1 0 0 0 1 0

8
Algèbre de Boole
Schéma logique des fonctions :
On obtient le schéma logique d’une fonction en remplaçant chaque
opérateur par le symbole correspondant
Exemple :

F1 = ab + aɸb F 2 = (a + b)(b.c)

F1
F2
a
b

9
Algèbre de Boole
Des lois fondamentaux :

10
Algèbre de Boole
Des lois fondamentaux :

A . ( B + C ) = ( A . B ) + ( A . C ) Distributivité du ET sur le OU
A + ( B . C ) = (A + B).(A + C) Distributivité du OU sur le ET

(A.B) + (A.B) = A A + ( A .B ) = A
A + AB = A + B
A. ( A + B) = A

A(A + B) = AB (A + B) . (A + B ) = A
AB + AC + BC = AB + AC A = A
(A + B)( A + C) ( B + C) = ( A + B)( A + C) A + A = 1
AB + A BC = AB + AC
A .A = 0
(A + B)(A + B + C) = (A + B)(A + C)

11
Algèbre de Boole
Des lois fondamentaux : Dualité de l’algèbre de Boole
Toute expression logique reste vraie, si nous remplaçons le ET par le OU,
le OU par le ET, le 1 par 0, le 0 par 1.
Exemple
A +1 = 1 → A .0 = 0
A + A = 1→ A .A = 0
Théorème de De MORGANE :

A.B = A + B A+B = A . B

En général :

12
Algèbre de Boole
Autres opérateurs logiques :
Le OU-exclusif XOR : Forme générale

A ⊕ B = A.B + A.B
A⊕ B

Autres formes du XOR :

13
Algèbre de Boole
Autres opérateurs logiques :
Le NON ET : (NAND)
A B Y = A.B
Y = A.B 0 0 1
A 0 1 1
B
Y = A.B 1 0 1
1 1 0
Le NON OU : (NOR)

Y = A+ B A B Y = A+ B
0 0 1
A
B
Y = A+ B 0 1 0
1 0 0
1 1 0

14
Algèbre de Boole
Utilisation des différentes portes pour exprimer les fonctions logiques :
Le but est de transformer une fonction selon les circuits intégrés disponibles
avec les portes correspondants.
Exemple : soit la fonction F = y( x + z ) …(01) en utilisant ET et OU

F = y( x + z) = yx + yz = yx.yz …(02) en utilisant NAND


F = y( x + z) = y + ( x + z) …(03) en utilisant NOR
zɸ yɸ x
zɸ yɸ x
(01) (02)
F
F

zɸ y x
(03)
F

15
Algèbre de Boole
Simplification des fonctions logiques :
Consiste à écrire une fonction à l’aide d’un nombre minimum des
termes et des opérateurs logiques, en utilisant les axiomes de
l’algèbre de Boole cités précédemment.
Exemple 1: simplifier, si possible, la fonction F :
F = (a + b)(b + c)(a + c) On a trois termes et 5 opérateurs
F = (a b + ac + b b + bc)(a + c) = (a b + ac + bc)(a + c)
F = (aa b + aac + abc + a bc + acc + bcc)
F = (abc + a bc + ac + bc) = (bc(a + 1) + ac(b + 1))
F = bc + ac = (a + b)c On a deux termes et 2 opérateurs
Exemple 2: simplifier, si possible, la fonction F :
F = ( a + b )( a + b + c )( a + c ) (à faire)

16
Algèbre de Boole
Les Max termes et Min termes de la table de vérité :

Min terme de la table de vérité : pour chaque valeur de la fonction


égale à 1on prend le produit des variables constituants la fonction, en
laissant la variable comme elle est si sa valeur est 1, sinon on prend
son complément
Max terme de la table de vérité : pour chaque valeur de la fonction
égale à 0 on prend la somme des variables constituants la fonction,
en laissant la variable comme elle est si sa valeur est 0, sinon on
prend son complément

17
Algèbre de Boole
Les Max termes et Min termes de la table de vérité :
Exemple :
A B C F
0 0 0 0 A + B + C : max terme
0 0 1 0 A + B + C : max terme
0 1 0 0 A + B + C : max terme
0 1 1 1 A .B.C : min terme
1 0 0 0 A + B + C : max terme
1 0 1 1 A .B.C : min terme
1 1 0 1 A .B.C : min terme
1 1 1 1 A .B.C : min terme

18
Algèbre de Boole
Les Max termes et Min termes de la table de vérité :
A partir de la table de vérité, on peut définir la fonction F :
F = Somme des produits (Min termes)
F = A .B.C + A .B.C + A .B.C + A .B.C
Ou bien :
F = Produit des sommes (Max termes)
F = (A + B + C)(A + B + C)(A + B + C)(A + B + C)
RQ : On peut faire l’inverse pour trouver la table de vérité à partir
d’une fonction qui est écrite sous forme de produits des sommes ou
sous forme de somme des produits,
Exemple : pour A . B . C ça donne 0 1 1, donc la valeur de F pour A=0,
B = 1 et C = 1 est 1
pour (A + B + C) ça donne 0 1 0, donc la valeur de F pour A=0, B = 1 et
C = 0 est 1

19
Algèbre de Boole
Les Formes canoniques:
Une forme canonique est une forme où chaque terme contient toutes
les variables constituant la fonction
Exemple :

Il existe 04 formes canoniques :


1) Première forme canonique
2) Deuxième forme canonique
3) Troisième forme canonique
4) Quatrième forme canonique
RQ : les plus utilisées en algèbre de Boole sont la 1ere et la 2eme

20
Algèbre de Boole
1) Première forme canonique (forme disjonctive)
Représente l’écriture de la somme des produits (Somme des Min
termes)
Exemple : F(A, B, C) = A . B . C + A . B . C + A . B . C + A . B . C
A B C F Autre représentation : 03 variables => 03 bits
0 0 0 0 Sur trois bits : (011)2 = (3)10, (101)2 = (5)10,
0 0 1 0
(110)2 = (6)10 et (111)2 = (7)10
0 1 0 0
F = R(3,5,6,7) = ∑(3,5,6,7)
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1

21
Algèbre de Boole
2) Deuxième forme canonique (forme conjonctive)
Représente l’écriture du produit des sommes (produit des Max
termes)
Exemple : F(A, B, C) = (A + B + C)(A + B + C)(A + B + C)(A + B + C)

A B C F Autre représentation : 03 variables => 03 bits


0 0 0 0 Sur trois bits : (000)2 = (0)10, (001)2 = (1)10,
0 0 1 0
(010)2 = (2)10 et (100)2 = (4)10
0 1 0 0
F = P(0,1,2,4) = ∏(0,1,2,4)
0 1 1 1
1 0 0 0
1 0 1 1
1 1 0 1
1 1 1 1

22
Algèbre de Boole
Equivalence entre 1ere et 2eme formes canoniques
La 1ere et 2eme formes canoniques sont équivalente => deux
écriture de la même fonction
Exemple : Soit F définit par la table de vérité A B F
Suivante : 0 0 0
0 1 1
F(A, B) = A . B + A . B + A . B 1ere forme canonique 1 0 1
= (A + B) 2eme forme canonique 1 1 1

A . B + A . B + A . B = (A + A)(A + B)(A + B)(B + B) + AB


= (A + B)(A + B) + AB = (A + A + B)(A + A + B)(B + A + B)(B + A + B)
= (A + B)(A + B) = (A + B)

23
Algèbre de Boole
3) Troisième forme canonique
Elle est déduite à partir de la 1ere forme canonique, elle consiste à
écrire une fonction en utilisant seulement les portes NON-ET
Exemple : F ( A, B, C) = A . B . C + A . B . C + A . B . C + A . B . C
= A .B.C + A .B.C + A .B.C + A .B.C
= (A . B . C)(A . B . C)(A . B . C)(A . B . C)
4) Quatrième forme canonique
Elle est déduite à partir de la 2eme forme canonique, elle consiste à
écrire une fonction en utilisant seulement les portes NON-OU
Exemple : F(A, B, C) = (A + B + C)(A + B + C)(A + B + C)(A + B + C)

= (A + B + C)(A + B + C)(A + B + C)(A + B + C)


= (A + B + C) + (A + B + C) + (A + B + C) + (A + B + C)

24
Algèbre de Boole
Exemples sur les formes canoniques :
1) Trouver les quartes formes canoniques de la fonction F définit par la
table de vérité suivante :
x y z F 1ere : F = x.y.z + x.y.z + x.y.z + x.y.z
0 0 0 0
0 0 1 1
2eme : F = (x + y + z)(x + y + z)(x + y + z)(x + y + z)
0 1 0 1
0 1 1 0
3eme : F = (x.y.z)(x.y.z)(x.y.z)(x.y.z)
1 0 0 1
1 0 1 1 4eme : F = (x + y + z) + (x + y + z) + (x + y + z) + (x + y + z)
1 1 0 0 2) Trouver la 1ere et 2eme FC des fonctions :
1 1 1 0
F1 = ( a + b )( a + b + c )( a + c )
F 2 = ab + a b c + acd + bd (à faire)
25
Algèbre de Boole
Simplification des fonctions logiques : méthode Algébrique
Toute fonction logique représentée soit par expression écrite, soit par
schéma logique ou soit par table de vérité, peut être simplifiée
La simplification consiste à écrire une fonction à l’aide d’un nombre
minimum des termes et des opérateurs logiques pour le but
d’économiser la construction des circuits logiques

Simplification par la méthode Algébrique :


La simplification est effectuée en utilisant les notions de l’algèbre de
Boole (les lois fondamentaux, loi de MORGAN, les formes canoniques)

26
Algèbre de Boole
Simplification des fonctions logiques : méthode Algébrique
Exemple1 : simplifier la fonction F = (a + b)(a + b + c)(a + c)

F = (a + b)(a + b + c)(a + c) = (a b + a c + ab + bc)(a + c)


F = a b + a c + abc + a bc + abc = a b + a c + abc
F = a (b + c) + abc = a bc + abc = a ⊕ bc
Exemple 2 : simplifier la fonction F définit par la table de vérité
A B F F = (A B) + (AB) = A(B + B) = A En utilisant 1ere FC
0 0 0 F = (A + B)(A + B) = A + (BB) = A En utilisant 2eme FC
0 1 0
1 0 1
1 1 1

27
Algèbre de Boole
Simplification des fonctions logiques : Table de KARNAUGH
La table de KARNAUGH et une autre forme de la table de vérité : Table à double
entrées (Lignes / Colonnes) pour n variables la table sera la plus carrée possible
pour p et q entrées avec p + q = n.
On a p=q=n/2 pour n paire et |p-q|=1 pour n impair
La table contiendra 2p lignes et 2q colonnes, on remplit les entrées des
variables selon le code binaire réfléchi
Exemple : pour deux variables p=1 et q=1

A B F
0 0 0 B 0 1
A
0 1 0 0 0 0
1 0 1 1 1 1
1 1 1

28
Algèbre de Boole
Simplification des fonctions logiques : Table de KARNAUGH
Exemple : pour trois variables p=2 et q=1

x y z F
yz
0 0 0 0 x 00 01 11 10
0 0 1 1 0 0 1 0 1
0 1 0 1 1 1 1 0 0
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 0
1 1 1 0

29
Algèbre de Boole
Simplification des fonctions logiques : Table de KARNAUGH
Exemple : pour quatre variables p=2 et q=2 a b c d F
0 0 0 0 0
0 0 0 1 1
cd 0 0 1 0 1
ab 00 01 11 10
0 0 1 1 1
00 0 1 1 1
0 1 0 0 0
01 0 1 1 1 0 1 0 1 1

11 0 1 1 1 0 1 1 0 1
0 1 1 1 1
10 1 1 0 0
1 0 0 0 1
1 0 0 1 1
Pour obtenir une forme canonique
1 0 1 0 0
d’fonction depuis la table de KARNAUGH
1 0 1 1 0
on procède de la même façon qu’une table
1 1 0 0 0
de vérité standard (Max termes et Min
1 1 0 1 1
termes)
1 1 1 0 1
1 1 1 1 1

30
Algèbre de Boole
Simplification des fonctions logiques : Table de KARNAUGH
Exemple : dresser la table de KARNAUGH de la fonction suivante :
F ( A, B, C) = A . B . C + A . B . C + A . B . C + A . B . C (1ere FC)
0 1 1 1 0 1 1 1 0 1 1 1
Donc : BC
A 00 01 11 10
0 0 0 1 0
1 0 1 1 1

F(A, B, C) = (A + B + C)(A + B + C)(A + B + C)(A + B + C) (2eme FC)


(0 0 0)(0 0 1)(0 1 0)( 1 0 0)
Donc BC
A 00 01 11 10
0 0 0 1 0
1 0 1 1 1

31
Algèbre de Boole
Simplification des fonctions logiques : Table de KARNAUGH
Pour trouver la forme simplifiée avec la table de KARNAUGH on procède comme
suit :
Réalisation des groupements de 1, 2, 4, 8, … termes (une puissance de 2);
Minimisation des groupements (maximisation des termes dans un
groupement) :
• Si groupement d'un seul terme, alors on ne fait rien ;
• On élimine les variables qui changent d'état et on conserve le produit
des variables qui n'ont pas changé d'état dans le groupement;
L'expression logique finale est la réunion des groupements après élimination
des variables

32
Algèbre de Boole
Simplification des fonctions logiques : Table de KARNAUGH
Exemple 1:

yz
x 00 01 11 10 xy + x y = x ⊕ y
F=
0 0 0 1 1
1 1 1 0 0

OU

yz
00 01 11 10
x F= ( x + y )( x + y ) = x ⊕ y
0 0 0 1 1
1 1 1 0 0

33
Algèbre de Boole
Simplification des fonctions logiques : Table de KARNAUGH
Exemple 2:

yz
00 01 11 10
x F= x+y
0 1 1 1 1
1 1 1 0 0

Exemple 3:

yz
x 00 01 11 10
F= z
0 1 0 0 1
1 1 0 0 1

34
Algèbre de Boole
Simplification des fonctions logiques : Table de KARNAUGH
Exemple 4:
cd
ab 00 01 11 10
00 0 1 1 1 F= (a + c + d )(b + c + d )(a + b + c)

01 0 1 1 1
11 0 1 1 1
10 1 1 0 0

Exemple 5 :
cd
ab 00 01 11 10
00 1 0 0 1
01 0 1 1 0 F= bd + bd regroupement des 1

11 0 1 1 0 Ou F= ( b + d )(b + d ) regroupement des 0

10 1 0 0 1

35
Algèbre de Boole
Exemple de réalisation d’un circuit logique :

Le circuit réalise la commande de a b c d Chiff X Y Z


0 0 0 0 0 0 0 1
trois lampes LED par un clavier
0 0 0 1 1 0 0 1
numérique 0-9; trois lampes sont 0 0 1 0 2 0 1 1
allumées si le chiffre tapé est 0 0 1 1 3 1 1 1

multiple de 3; 2 sont allumées si 0 1 0 0 4 0 1 1


0 1 0 1 5 0 0 0
le chiffre est multiple de 2, une
0 1 1 0 6 1 1 1
seule lampe est allumée si le 0 1 1 1 7 0 0 0
chiffre tapé est 1 ou 0, aucune 1 0 0 0 8 0 1 1

lampe n’est allumée pour les 1 0 0 1 9 1 1 1


1 0 1 0 10 d d d
autres chiffes
1 0 1 1 11 d d d
Q : trouver les fonctions 1 1 0 0 12 d d d
simplifiées des sorties (lampes); 1 1 0 1 13 d d d

puis dresser le schéma logique 1 1 1 0 14 d d d


1 1 1 1 15 d d d

36

Vous aimerez peut-être aussi