Professional Documents
Culture Documents
Chapitre 5
Algbre boolenne
5.1. L'algbre de Boole
L'algbre de Boole, ou calcul boolen, est la partie des mathmatiques qui s'intresse aux
oprations et aux fonctions sur les variables logiques. Elle fut invente par le mathmaticien
britannique George Boole. Aujourd'hui, l'algbre de Boole trouve de nombreuses applications en
informatique et dans la conception des circuits lectroniques.
On appelle B l'ensemble constitu de deux lments appels valeurs de vrit {FAUX, VRAI}.
Cet ensemble est aussi not B = {0, 1}, notation que l'on utilisera dsormais.
Sur cet ensemble on peut dfinir les lois ET et OU et une transformation appele
George Boole complmentaire (parfois inversion ou contraire ).
(1815-1864)
ET
Elle est dfinie de la manire suivante : a ET b est VRAI si et seulement si a est VRAI et b est
VRAI. Cette loi est aussi note :
ab
a/\b (dans quelques notations algbriques, ou en APL)
a&b ou a&&b (Perl, C, PHP, ...)
a AND b (Ada, Pascal, Python, ...)
OU
Elle est dfinie de la manire suivante : a OU b est VRAI si et seulement si a est VRAI ou b est
VRAI, ou si a et b sont vrais. Cette loi est aussi note :
a+b
a\/b (dans quelques notations algbriques ou en APL)
a|b ou a||b (Perl, C, PHP, ...)
a OR b (Ada, Pascal, Python, ...)
NON
Le contraire de a est VRAI si et seulement si a est FAUX. Le contraire de a est not :
a
a
~a (dans quelques notations algbriques ou en APL)
!a (C, C++...)
NOT a (ASM, Pascal, ...)
Toutes ces
proprits peuvent
tre facilement Quelques proprits utiles
dmontres l'aide
de tables de vrit.
Associativit
Comme avec les oprations habituelles, certaines parenthses sont inutiles :
(a + b) + c = a + (b + c) = a + b + c
(ab)c = a(bc) = abc
Commutativit
L'ordre est sans importance :
a+b=b+a
ab = ba
Distributivit
Comme avec les oprations mathmatiques habituelles, il est possible de distribuer :
a(b + c) = ab + ac
Attention : comportement diffrent par rapport aux oprateurs + et habituels :
a + (bc) = (a + b)(a + c)
Idempotence
a + a + a + [...] + a = a
aaa[...]a = a
lment neutre
a+0=a
a1 = a
lment nul
0a = 0
1+a=1
Complmentarit
a = (a)
a+ a =1
a a =0
Lois de De Morgan
ab=a b ab=ab
Augustus de
Morgan
Priorit
(1806-1871)
Pour faciliter leur comprhension, il a t dcid que ces oprations seraient soumises aux
mmes rgles que les oprations mathmatiques. La fonction ET (multiplication logique) est ainsi
prioritaire par rapport la fonction OU (somme logique) ; on peut, pour s'aider, placer des
parenthses dans les oprations.
Maurice Karnaugh
(1924-)
5.3.1. Principe
Soit la table de vrit de S suivante avec les variables A, B, C et D :
A B C D S
0 0 0 0 1
0 0 0 1 0
0 0 1 0 1
0 0 1 1 1
0 1 0 0 0
0 1 0 1 1
0 1 1 0 1
0 1 1 1 1
1 0 0 0 1
1 0 0 1 0
1 0 1 0 1
1 0 1 1 1
1 1 0 0 0
1 1 0 1 1
1 1 1 0 1
1 1 1 1 1
Les groupes forms doivent tre les moins nombreux possibles, mais ils doivent englober
tous les 1. On peut faire des chevauchements.
On a intrt dessiner des rectangles les plus grands possibles.
On peut considrer cette table comme un tore : la dernire ligne est adjacente la premire
et la premire colonne est adjacente la dernire. On peut ainsi regrouper des 1 se trouvant
ces emplacements.
Exercice 5.1
Trouvez les quations des tables de vrit de S, T et U avec les variables A, B, C et D :
A B C D S T U
0 0 0 0 0 1 0
0 0 0 1 0 1 1
0 0 1 0 0 0 1
0 0 1 1 0 1 1
0 1 0 0 0 0 0
0 1 0 1 1 1 1
0 1 1 0 1 1 0
0 1 1 1 1 1 0
1 0 0 0 0 0 0
1 0 0 1 1 1 1
1 0 1 0 0 1 1
1 0 1 1 1 1 1
1 1 0 0 0 1 0
1 1 0 1 0 1 1
1 1 1 0 1 1 0
1 1 1 1 1 1 0
Les circuits
logiques ont t
dessins grce au
programme Logicly.
http://logic.ly/
La porte NAND
La porte NAND est la plus simple raliser du point de vue technologique. Il est possible de
raliser toutes les fonctions logiques en utilisant uniquement ce type de porte.
Exercice 5.2
Reprenez les quations trouves l'exercice 5.1, simplifiez-les grce aux proprits des fonctions
logiques, puis construisez les circuits logiques correspondants.
Exercice 5.3
Ralisez une porte XOR avec des portes AND, OR et NOT.
Exercice 5.4
On a trois interrupteurs pouvant tre en position 0 ou 1 et trois ampoules pouvant tre allumes
ou teintes. On veut crer un circuit logique o le nombre de lampes allumes correspond au nombre
d'interrupteurs positionns sur 1, mais on ne veut pas savoir quels interrupteurs le sont.
1. tablissez les tables de vrit de ce problme.
2. Trouvez l'quation la plus simple possible pour chaque table de vrit.
3. Dessinez le circuit logique correspondant.
Exercice 5.5
Soit le circuit ci-dessous :
Exercice 5.7
Les afficheurs 7 segments sont un type d'afficheur numrique trs prsent sur les calculatrices et
les montres affichage numrique : les caractres (des chiffres, bien que quelques lettres soient
utilises pour l'affichage hexadcimal) s'crivent en allumant ou en teignant des segments, au
nombre de sept. Quand les 7 segments sont allums, on obtient le chiffre 8.
Voici les 16 symboles reprsents avec l'affichage 7 segments :
Dans un afficheur 7 segments, les segments sont gnralement dsigns par les lettres allant de A
G (voir ci-dessous).
On dispose de 4 interrupteurs qui reprsenteront les 4 bits d'un nombre exprim en base 2 et
compris entre 0 et 15. On veut que ce nombre en base 2 s'affiche en base 16. Les sept segments
seront symboliss par des ampoules.
1. tablissez les tables de vrit de ce problme.
2. Trouvez les quations les plus simples possible des tables de vrit.
3. Dessinez le circuit logique correspondant.
Sources
[1] Mange Daniel, Analyse et Synthse des systmes logiques, PPUR, 1995
[2] Wikipdia, Portail de la logique , <http://fr.wikipedia.org/wiki/Portail:Logique>