1 Représentation de l`information 2 Formes canoniques

Transcription

1 Représentation de l`information 2 Formes canoniques
1ère session
Année 2010-2011
Exercices de Logique Combinatoire
EN 101
Camille LEROUX - Dominique Dallet
Filière : TELECOM
Année : 2012-2013
Semestre : 6
SUJET
1
Représentation de l’information
Exercice 1
Nous désirons cadrer une position entre 0 et 15 cm avec une précision supérieure ou égale à 0.1 mm.
1. Quel est le nombre de bits nécessaires ?
2. Quelle est la précision obtenue finalement ?
3. Donner la relation entre la longueur en mm et le code binaire.
4. Quelle est la longueur décimale qui correspond au nombre 72C en hexadécimale ?
1. Il faut coder 15.10−2/0.1.10−3 = 1500 valeurs pour avoir une précision de 0.1mm. Notons que, 210 <
1500 < 211 . Pour avoir une précision d’AU MOINS 0.1 mm, il faut donc coder la longueur sur 11 bits.
2. Sur 11 bits, on peut coder 2048 valeurs, la précision obtenue est donc de δ = 15cm/2048 ≈ 0.073mm.
3. La longueur est obtenue en multipliant le pas de quantification δ (exprimé en mm) par le code binaire.
(L)10 = (δ)10 × (N )2
4. La valeur héxadécimale 72C correspond à 011100101100 en binaire qui correspond elle même à la valeur
(4+8+32+256+512+1024)=1836 en base 10. La longeur L vaut donc 1836 × 0.073mm ≈ 134mm.
2
Formes canoniques
Exercice 1
Établir la table de vérité de la fonction suivante, puis l’écrire sous les deux formes canoniques :
F = X + Y.Z + Y .Z.T
1
On dresse tout d’aborde la table de vérité:
X
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
Y
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
Z
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
T
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
F2
0
1
0
0
0
0
1
1
1
1
1
1
1
1
1
1
Table 1: Tableau de vérité de la fonction F .
• Première forme canonique: somme de min-termes correspondant aux valeurs non-nulles de F :
F = X.Y .Z.T + X.Y.Z.T + X.Y.Z.T + X.Y .Z.T + X.Y .Z.T + X.Y .Z.T + X.Y .Z.T + ...
...X.Y.Z.T + X.Y.Z.T + X.Y.Z.T + X.Y.Z.T
• Deuxième forme canonique: produit de max-termes correspondant aux valeurs nulles de F :
F = (X + Y + Z + T ).(X + Y + Z + T ).(X + Y + Z + T ).(X + Y + Z + T ).(X + Y + Z + T ).
Exercice 2
Établir les tables de vérité des fonctions suivantes, puis les écrire sous les deux formes canoniques :
1. F1 = X.Y + Y.Z + X.Z
2. F2 = X + Y.Z + Y .Z.T
3. F3 = (X + Y )(X + Y + Z)
4. F4 = (X + Y + Z)(X + Y + Z)(X + Y + Z)(X + Y + Z)(X + Y + Z)
F1 = X.Y + Y.Z + X.Z
2
X
0
0
0
0
1
1
1
1
Y
0
0
1
1
0
0
1
1
Z
0
1
0
1
0
1
0
1
F1
0
0
0
1
0
1
1
1
Première forme canonique:
F1 = X.Y.Z + X.Y .Z + X.Y.Z + X.Y.Z
Deuxième forme canonique:
F1 = (X + Y + Z)(X + Y + Z)(X + Y + Z)(X + Y + Z)
F2 = X + Y.Z + Y .Z.T
X
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
Y
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
Z
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
T
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
F2
0
1
0
0
0
0
1
1
1
1
1
1
1
1
1
1
Première forme canonique:
F2 = X.Y .Z.T + X.Y.Z.T + X.Y.Z.T + X.Y .Z.T + X.Y .Z.T + X.Y .Z.T + X.Y .Z.T + X.Y.Z.T + X.Y.Z.T +
X.Y.Z.T + X.Y.Z.T
Deuxième forme canonique:
F2 = (X + Y + Z + T )(X + Y + Z + T )(X + Y + Z + T )(X + Y + Z + T )(X + Y + Z + T )
F3 = (X + Y )(X + Y + Z)
3
X
0
0
0
0
1
1
1
1
Y
0
0
1
1
0
0
1
1
Z
0
1
0
1
0
1
0
1
F3
0
0
1
1
0
1
1
1
Première forme canonique:
F3 = XY Z + XY Z + XY Z + XY Z + XY Z
Deuxième forme canonique:
F3 = (X + Y + Z)(X + Y + Z)(X + Y + Z)
F4 = (X + Y + Z)(X + Y + Z)(X + Y + Z)(X + Y + Z)(X + Y + Z)
X
0
0
0
0
1
1
1
1
Y
0
0
1
1
0
0
1
1
Z
0
1
0
1
0
1
0
1
F4
0
0
0
0
1
1
0
1
Première forme canonique:
F4 = X.Y .Z + X.Y .Z + X.Y.Z
Deuxième forme canonique:
F4 = (X + Y + Z) + (X + Y + Z) + (X + Y + Z) + (X + Y + Z) + (X + Y + Z)
Exercice 3
Écrire sous la première forme canonique les fonctions définies par les propositions suivantes :
1. f(A,B,C) = 1 si et seulement si aucune des variables A, B, C ne prend la valeur 1
2. f(A,B,C) = 1 si et seulement si au plus une des variables A, B, C prend la valeur 0
3. f(A,B,C) = 1 si et seulement si exactement une des variables A, B, C prend la valeur 1
Mettre ces fonctions sous la seconde forme canonique.
a-) Utilisez les combinaisons des variables pour lesquelles f = 1.
1. f (A, B, C) = A.B.C
2. f (A, B, C) = A.B.C + A.B.C + A.B.C + A.B.C
3. f (A, B, C) = A.B.C + A.B.C + A.B.C
4
b-) Utilisez les combinaisons des variables pour lesquelles f = 0.
1. 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)
2. f (A, B, C) = (A + B + C)(A + B + C)(A + B + C)(A + B + C)
3. f (A, B, C) = (A + B + C)(A + B + C)(A + B + C)(A + B + C)(A + B + C)
3
Algébre de Boole
Exercice 1
Démontrer algébriquement les relations suivantes :
1. AB + ACD + BD = AB + BD
2. (A + B)(A + C)(B + C) = (A + B)(A + C)
3. (A + B)(A + C) = (A + B)(A + C)
Solution 1 : Deux fonctions logiques sont identiques si et seulement si leurs tables de vérité ou leurs formes
canoniques sont identiques. Une solution consiste donc à établir la table de vérité ou l’une des représentations
canoniques de la fonction définie par chaque expression, et de les comparer.
Solution 2 : Les identités peuvent également être démontrées par des manipulations algébriques. A titre
d’exemple :
1. AB + ACD + BD = AB + ACD(B + B) + BD = AB + ABCD + ABCD + BD
= AB(1 + CD) + BD(1 + AC) = AB + BD
2. (A + B)(A + C)(B + C) = (A + B)(A + C)(B + C + AA) = (A + B)(A + C)(B + C + A)(B + C + A)
= (A + B + 0.C)(A + C + 0.B) = (A + B)(A + C)
3.(A + B)(A + C) = A + B + A + C = (A.B) + (A.C) = (A + A)(A + C)(B + A)(B + C)
(A + C)(A + B)(AA + B + C) = (A + C)(A + B)(A + B + C)(A + B + C)
(A + 0.B + C)(A + B + 0.C) = (A + B)(A + C)
Exercice 2
Simplifier algébriquement les fonctions suivantes :
1. F1 = (X + Y )(X + Y )
2. F2 = X.Y + X.Y + X.Y
3. F3 = X.Y + Z + Z.(X + Y )
4. F4 = (X + Y + Z)(X + Y + Z) + X.Y + Y.Z
1. F1 = Y
5
2. F2 = X + Y
3. F3 = 1
4. F4 = Y + Z
Exercice 3
Question 1
Soit le circuit suivant: Donnez l’équation logique de F en fonction de A,B,C et D.
A
B
A
C
F (A, B, C, D)
D
A
B
C
F (A, B, C, D) = A.B + A.C.D + A.B.C
Question 2
Consider
below. Each of the control inputs, C0 through C3, must be tied to a
Dans le circuit suivant, quelles doivent B.
être les
valeursthe
decircuit
C0 , Cshown
1 , C2 , et C3 pour que F soir le Ou exclusif de
either 0 or 1.
A et B.
A
B
C0
A
B
C1
F
A
B
C2
A
B
C3
Figure by MIT OpenCourseWare.
Le OU-exclusif de A et B s’exprime A.B + A.B. D’autre part, on a F = C0 .A.B + C1 .A.B + C2 .A.B + C3 .A.B.
Par identification on en déduit que F estWhat
le Ou
de BC3
si that
et seulement
are exclusif
the valuesdeof A
C0etthrough
would causesiF toC0be=theC3 = 0 et
C1 = C2 = 1.
of A and B?
We want F to be 1 when A=1 and B=0, or when A=0 and B=1. So C0 = 0, C1 = 1, C2 = 1, C3 = 0
Question 3
Can any arbitrary
function
of A and
B be
through
appropriate wiring of the c
C. n’importe
Expliquez pourquoi il est possible de réaliser
quelleBoolean
fonction
booléenne
de A
et realized
de B avec
ce circuit.
C0 through C3?
Toute fonction logique est définissable par une somme de min termes des entrées. La fonction F est une somme
Yes. This circuit implements a 4-input MUX with its two select lines connected to A and B. By ch
de tous les min-termes des entrées. Chaque min-terme peut être sélectionné en choisissant la valeur de Ci
appropriate values for C0 through C3 we can implement any of the 16 possible Boolean functions
adéquate. Il est donc possible d’implémenter n’importe quelle fonction logique à 2 entrées avec F .
D. Give a sum-of-products expression for each of the following circuits:
6
Question 4
Pour chaque circuit, donnez l’expression logique qu’il implémente sous forme de somme de produits et sous
forme de produit de sommes.
A
A
B
B
C
C
(a)
(b)
A
B
A
A
C
D
f
F (A, B, C, D)
B
A
C
B
C
(c)
(d)
X
A
D
Q
B
C
W
Z
(e)
Figure by MIT OpenCourseWare.
(a):
ΣΠ: F
ΠΣ: F
(b):
ΣΠ: F
ΠΣ: F
(c):
ΣΠ: F
ΠΣ: F
(d):
ΣΠ: F
ΠΣ: F
(e):
ΣΠ: F
ΠΣ: F
= A.B + B + C
=A+B+C
= A.C + B.C
= (A + B).C
= A.C + B.C
= (A + B).(A + C).(B + C)
E. Give a canonical sum-of-products expression for the Boolean function described by each truth table below
= A.B + A.C.D + A.B.C
= (A + B + C).(A + B + D).(A + D + C).(A + B).(B + C + D)
= A.D + B.C + B.D
= (A + B).(C + D).(A + B + C + D)
Question 5
Pour chaque table de vérité, donnez l’expression logique en utilisant la 1ère forme canonique et la 2ème forme
canonique.
We can construct a sum-of-products expression from a truth table by writing down a product term for each line
of the table where the output is 1. Each product term contains all the input variables: directly (ie, "A") if that
variable is 1 for this line of the truth table, or negated (ie, "not A") if that variable is 0 for this line of the truth
table. We then OR the product terms together to get the final expression:
Pour la 1ère forme canonique, on écrit la somme des min-termes correspondant aux sorties à ’1’:
F (A, B, C) = A.B.C + A.B.C + A.B.C + A.B.C
G(A, B, C) = A.B.C + A.B.C + A.B.C + A.B.C
F. We've seen that there are a total of sixteen
7 2-input Boolean functions. How many 5-input Boolean functions are
there?
There are 225 = 232 5-input boolean functions. To see why, recall that the truth table for a 5-input function will
have 32 rows, one for each possible combination of the 5 inputs. The output column for each row can be filled
in with one of two choices ("0" or "1"), for a total of 232 possible ways of filling in the output column for all 32
rows.
Pour la 2ème forme canonique, on écrit le produit des max-termes correspondants aux sorties à ’0’ en prenant
soin de complémenter chaque variable:
F (A, B, C) = (A + B + C).(A + B + C).(A + B + C).(A + B + C)
G(A, B, C) = (A + B + C).(A + B + C).(A + B + C).(A + B + C)
4
Synthèse de fonctions logiques et tableaux de Karnaugh
Exercice 1
Une société a 4 actionnaires (A, B, C et D) dont le nombre d’actions est le suivant :
• A: 60
• B: 100
• C: 160
• D: 180
Nous désirons construire une machine permettant le vote automatique par boutons poussoirs lors des réunions.
Pour chaque actionnaire, le poids du vote est proportionnel au nombre d’actions qu’il possède. Une résolution est
votée (V = 1) si la somme des actions correspondantes au vote OUI représente au moins la moitié des actions
plus une. Faire la synthèse (table de vérité, simplification par un tableau de Karnaugh et logigramme) du
dispositif de vote en utilisant uniquement des portes NAND à 2 et 3 entrées. Nous prendrons comme convention
: vote OUI de A correspond à A = 1.
V=1 si le nombre de votes OUI est supérieur ou égal à 251 (moyenne 250 actions)
On dresse la table de vérité de la fonction V .
A
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
B
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
C
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
D
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
V
0
0
0
1
0
1
1
1
0
0
0
1
0
1
1
1
Table 2: Tableau de vérité de la fonction V .
On en déduit le tableau de Karnaugh suivant
AB/CD
00
01
11
10
00
0
0
0
0
01
0
1
1
0
11
1
1
1
1
10
0
1
1
0
Table 3: Tableau de Karnaugh de la fonction V .
8
En effectuant trois regroupement de quatre cases, on en déduit l’équation logique simplifiée:
V = BD + BC + CD
Finalement, en appliquant la théorème de De Morgan, on obtient:
V = B.D.B.C.C.D
Exercice 2
Réaliser deux circuits à base de portes XOR correspondant aux deux transcodeurs à quatre entrées binaires :
Code binaire → Code de Gray Code de Gray → Code binaire
Dressons tout d’abord la table de vérité correspondant au transcodage de code binaire vers code de Gray:
B3
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
B2
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
B1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
B0
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
G3
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
G2
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
G1
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
G0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
Table 4: Tableau de vérité Binaire vers Gray
La première méthode consiste à utiliser des tableaux de Karnaugh pour chacune des variables G3 , G2 , G1 et
G0 et d’en déduire ainsi les équations logiques.
Cependant, en observant la table de vérité, on peut plus simplement remarquer:
• G3 = B3
• G2 = B3 ⊕ B2
• G1 = B2 ⊕ B1
• G0 = B1 ⊕ B0
Le transcodeur binaire → Gray est donc constitué de trois portes logiques XOR.
Pour le transcodeur Gray → binaire, on a tout d’abord:
B3 = G3
On peut ensuite, par substitution en déduire:
• B2 = G2 ⊕ G3
• B1 = G1 ⊕ G2 ⊕ G3
• B0 = G0 ⊕ G1 ⊕ G2 ⊕ G3
Le circuit résultant est composé de 3 portes XOR.
9
Exercice 3
Simplifier, par la méthode des diagrammes de Karnaugh, les fonctions booléennes suivantes :
1. F (A, B, C) = A.B.C + A.B.C + A.B.C + A.B.C + A.B.C + A.B.C
2. F (A, B, C) = A.B.C + A.B.C + A.B.C + A.B.C
3. F (A, B, C) = A.B.C + A.B.C + A.B.C
4. F (A, B, C) = (A + B + C)(A + B + C)(A + B + C)(A + B + C)(A + B + C) Utiliser les zéros du tableau
de Karnaugh et donner le résultat sous forme conjonctive.
1. F (A, B, C) = B + C
2. Pas de simplification possible, il s’agit de la fonction XNOR, F (A, B, C) = A ⊕ B ⊕ C
3. Rappel : en présence d’états indifférents, traiter d’abord la simplification sans en tenir compte, puis les
prendre en compte pour agrandir et éventuellement fusionner les regroupements déjà existants (ne pas
créer de nouveaux groupes). F (A, B, C) = AC + AC = A ⊕ C
4. F (A, B, C) = (B + C)(B + C)(A + B)ou(B + C)(B + C)(A + C)
Exercice 4
Simplifier, par la méthode des diagrammes de Karnaugh, les fonctions booléennes suivantes :
1. F (A, B, C, D) = A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D
2. F (A, B, C, D) = A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D
3. F (A, B, C, D) = A.B.C.D+A.B.C.D+A.B.C.D +A.B.C.D +A.B.C.D +A.B.C.D +A.B.C.D +A.B.C.D
4. F (A, B, C, D) = (A+B+C+D)(A+B+C+D)(A+B+C+D)(A+B+C+D)(A+B+C+D)(A+B+C+D)
Donner le résultat sous les deux formes algébriques, conjonctive et disjonctive.
5. F (A, B, C, D) = A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D + A.B.C.D, sachant
que quatre combinaisons de variables sont impossibles : A.B.C.D , A.B.C.D, A.B.C.D , et A.B.C.D .
6. F (A, B, C, D) prend la valeur 1 pour les combinaisons suivantes des variables booléennes A, B, C, et D
: A.B.C.D , A.B.C.D , A.B.C.D, A.B.C.D , A.B.C.D, A.B.C.D , A.B.C.D . La valeur de F peut être
quelconque pour les combinaisons A.B.C.D , A.B.C.D , A.B.C.D , A.B.C.D , et A.B.C.D .
1. F (A, B, C, D) = AB
2. F (A, B, C, D) = BD
3. Tableau en damier, avec F = 0 pour A = B = C = 0 rightarrow pas de simplification possible, il s’agit
de la fonction OU exclusif (OUEX ou XOR) : F (A, B, C, D) = A ⊕ B ⊕ C ⊕ D
4. Résultat sous forme conjonctive, obtenue en regroupant les 0 : F (A, B, C, D) = (A + C + D)(A + B +
C)(A + B + D)(A + B + C + D)(A + B + C + D)
5. Résultat sous forme disjonctive, obtenue en regroupant les 1 : F (A, B, C, D) = A.C + B.D + A.B.D +
A.B.C + A.C.D
6. F (A, B, C, D) = A.B.D + A.B.C + B.C.D + A.B.D
7. F (A, B, C, D) = A.B + A.B + C.D + C.D = A ⊕ B + C ⊕ D , et tous les états indifférents sont utilisés.
10

Documents pareils