Chapitre 3
Algèbre de Boole W. Affane Département de la formation préparatoire ST Ecole Nationale Polytechnique d’Oran
Introduction • Tout ordinateur est conçu à partir de circuits électroniques. (ALU, mémoire, circuit décodant les instructions etc.) • Chaque circuit fournit une fonction logique bien déterminée (addition, comparaison ,….).
• La fonction F(A,B) peut être : la somme de A et B , ou le résultat de la comparaison de A et B ou une autre fonction
Introduction • Ces circuits sont fait à partir de circuits logiques dont le but est d’exécuter des opérations sur des variables logiques (binaires) • Pour concevoir et réaliser ce circuit on doit avoir un modèle mathématique de la fonction réalisée par ce circuit . • Ce modèle doit prendre en considération le système binaire. • Le modèle mathématique utilisé est celui de Boole.
Plan • Algèbre de bool – Variables, opérateurs, fonctions logiques.. – Propriétés fondamentales et théorèmes. – Formes canoniques d’une fonction logique. – Simplification des fonctions • Simplification Algébrique. • Simplification Graphique (Tableau de Karnaugh)
• Circuits logiques • Représentation des fonctions par des circuits logiques.
Algèbre de Bool • Définie en 1847 par Georges Boole (1815-1864), physicien Anglais – Algèbre applicable au raisonnement logique qui traite des fonctions à variables binaires (deux valeurs). – Ne s'applique pas aux systèmes à plus de deux états d'équilibre. – Permet d'étudier les circuits logiques circuits capables d’effectuer des opérations arithmétiques et logiques .
les circuits (éléments de base d’un ordinateur) .
Algèbre de Bool • L ’algèbre de Boole permet de manipuler des valeurs logiques – Une valeur logique n’a que deux états possibles : • Vrai=1, Faux=0 »Arrêt/ marche » ouvert/ fermé » enclenché/ déclenché » avant/ arrière »Conduction/ blocage.
• Plusieurs valeurs logiques peuvent être combinées pour donner un résultat (fonction logique) qui est lui aussi une valeur logique
Eléments de l’Algèbre de Bool • Définitions: • Variable logique : ( variable booléenne, variables binaire) est une variable dont la valeur appartient à l’ensemble {0,1} • Opérateurs logiques: La manipulation des valeurs logiques repose sur 3 opérateurs de base: • ET, OU, NON • Fonction logique : Expression de variables et d’opérateurs logiques.
Fonction logique • Une fonction logique est le résultat de la combinaison d'une ou plusieurs variables logiques reliées entre elles par des opérations logiques de base. – Exemple:
f = (a et b) ou c et (non d)
• Une fonction logique à n variables f(a,b,c,d,...,n) est définie n de : 0,1 0,1
n variables logiques d'entrée
•
une variable logique de sortie.
n 2 Les cas possibles forment un ensemble fini (card =
).
Exemple de fonction logique • Sécurisation du démarrage d'un véhicule • Le véhicule ne peut démarrer que si un certain nombre de conditions sont remplies (cela suppose, bien entendu la présence de capteurs appropriés). • La fonction D (démarrage) ne prendra la valeur 1 que si les conditions de sécurité sont remplies. • D = f(P, C, F, L) Portière : P Ceinture: C
Ouverte : 0 Fermée
Feux : F
:1
Non bouclée : 0 Bouclée
:1
Jour ou Nuit : L
Eteints : 0 Allumés :1 Nuit : 0 Jour :1
Exemple de fonction logique • Nous pouvons exprimer la fonction D par un texte comportant des ET et des OU • Le démarrage sera alors possible si: – les portières sont fermées ET les ceintures de sécurité bouclées ET ((si les feux sont allumés ET qu'il fait nuit) (OU si les feux sont éteints ET qu'il fait jour)) • Ce qui peut aussi s'écrire: D = 1 si P=1 et C=1 et ((F=1 et L=0) ou (F=0 et L=1))
Table de vérité • La fonction logique peut être représentée par une Table de vérité. • La table de vérité permet la connaissance de la valeur de la sortie en fonction des diverses combinaisons des valeurs des entrées. – Le nombre de colonnes de la table est le nombre total d'entrées et de la sortie. – Le nombre de lignes est 2 sachant que "n" est le nombre d’entrées
Entrées
Sortie
a b c
s
0 0 0
0
0 0 1
0
0 1 0
1
0 1 1
1
1 0 0
0
1 0 1
1
1 1 0
0
1 1 1
1
n
Une fonction de 3 entrées et 1 sortie se représente par une table de 4 colonnes et 8 lignes:
Opérateurs logiques • L’Opérateur logique Not (complémentation, Inversion) est un opérateur unaire ( une seule variable) qui a pour rôle d’inverser la valeur d’une variable S= not(a)= a ( lire : a barre )
Entrées Sortie a 0 1
s 1 0
S est vrai si a est faux
Opérateurs logiques 2. L’Opérateur logique ET (And, Produit, min) Conjonction entre deux variables logiques • S= a.b= ab = a and b
Entrées
Sortie
a
b
s
0 0 1 1
0 1 0 1
0 0 0 1
• s=f(a,b)=1 si a=1 et b=1 • S=ab
Analogie électrique •on représente une ampoule de lampe électrique par une variable binaire s . • si l’ampoule est éteinte s=0. • si l’ampoule est allumée s=1. •on représente un interrupteur par une variable binaire a ( b ,c) . • Si l’interrupteur est ouvert a=0. • Si l’interrupteur est fermé a=1. • La lampe s’allume si et seulement si on appuie sur ‘a’ et ‘b’.
Opérateurs logiques 3.L’Opérateur logique OU (OR,Somme,max) disjonction entre deux variables logiques. •S = a+b = a or b
Entrées
Sortie
a
b
s
0 0 1 1
0 1 0 1
0 1 1 1
•
• s=f(a,b)=1 si a=1 ou b=1 • S=a+b
La lampe s’allume si on appuie sur ‘a’ ou sur ‘b’, à plus forte raison sur les deux.
Propriétés de l’algèbre de Boole •Fermeture Si a et b des variables booléennes alors a+b , ab sont aussi des variables booléennes
• Commutativité • a+b = b+a • a.b= b.a • Associativité • a+(b+c) = (a+b)+c • a.(b.c) = (a.b).c • Distributivité • a.(b+c) = a.b+a.c • a+(b.c) = (a+b).(a+c)
Démonstration de la distributivité
Propriétés de l’algèbre de Boole • Élément neutre • a+0 = a • a.1 = a • Élément absorbant • a+1 =1 • a.0 = 0 • Inverse(complémentarité) • a+ a = 1 • a. a = 0
• Idempotence • a+a = a • a.a = a • priorité • a+b.c = a+(b.c)
Représentation électrique de quelques propriétés R e p r é s e n t a t io n é le c t r iq u e a
E q u a t io n
R e p r é s e n t a t io n é le c t r iq u e a
a + 0 = a
0
a
a .0 = 0
a
a .a = a
a
a
a + 1 = 1
1
a
a + a = a
a
0
a
E q u a t io n
a + a = 1 a
1
a . 1 = a
a
a
a .a = 0
Théorèmes de l’Algèbre de bool • Théorème d’involution : a = a a =a • Théorème d’inclusion : a.b + a.b = a b (a + b).(a + ) = a • Théorème d’allégement : a. (a +b) = a.b a +a .b = a +b
Théorèmes de l’Algèbre de bool Théorème d’Absorption 1. a.(a+b) = a 2. a+(a.b) = a
Théorème de Morgan 1. . a b a.b 2. . a.b a b
Vérification :
1. Démonstration par la distributivité du ET (utilisée dans les 2 sens) : 2.a(a+b) Démonstration par la distributivité du OU (utilisée dans les 2 sens) : = a.a + a.b (distributivité du ET) a+a.b ==(a+a).(a+b) du OU) a + a.b (2ème(distributivité forme du théorème d’absorption) = =a.(a+b) forme du théorème d’absorption) a.(b+1)(1ère (mise en facteur de a : distributivité du ET « à l’envers ») = =(a+0).(a+b) . a.1 = a= +a (b.0) (distributivité du OU à l’envers : « factorisation par l’addition ») = a+0 =a
Dualité de l’Algèbre de bool •Toute propriété de l’Algèbre de Bool (/Théorème )possède un équivalent dual, où les éléments 0 sont remplacés par des 1,les 1 par des 0, les ( · ) par des ( + ) et vice et versa. Exemple: considérons le théorème suivant : • a+a = a. on peut immédiatement déduire de ce théorème son dual: • a. a = a. •Par le principe de dualité toute expression logique reste vrais si on remplace le ET par le OU , le OU par le ET , le 1 par 0 , le 0 par 1.
Autres opérateurs logiques L’Opérateur logique NAND No-And(Non ET)
S a.b Entrées
a
b
0 0 1 1
0 1 0 1
L’Opérateur logique NOR No-OR ou NI (Non OU)
S a b Sortie
a.b S a.b 0 1 0 1 0 1 1 0
s=f(a,b)=1 si a OU b est faux.
Entrées
Sortie
a b 0 0 0 1
a+b S a b 0 1 1 0
1 0 1 1
1 1
0 0
s=f(a,b)=1 si ni a, ni b ne sont vrais.
Autres opérateurs logiques
pérateur logique XOR (Ou exclusif) t une fonction OU qui exclue as ou ‘a’ et ‘b’ sont à 1
S a b a.b a.b Entrées
Sortie
a
b
S a b
0 0 1 1
0 1 0 1
0 1 1 0
• s=f(a,b)=1 si a est différent de b. • Opérateur de différence.
L’Opérateur logique XNOR est la négation du XOR( XNOR)
S = a XNOR b = a b Entrées Sortie a b S = a XNOR b 0 0 1 0 1 1
1 0 1
0 0 1
• s=f(a,b)=1 si a est égal à b. • Opérateur d’égalité.
Formes canoniques d’une fonction • On appelle forme canonique d’une fonction la forme ou chaque terme de la fonction comportent toutes les variables. • On appelle «minterme» ( terme produit) le produit de toutes les variables d'entrées, complémentées si leur valeur est 0, non complémentées si leur valeur est 1. Entrées •pour une table de vérité de 3 variables d’entrées a, b, c les mintermes sont: m0, m1,m2, m3,m4,m5,m6,m7,
m0 a.b.c m1 a.b.c m2 a.b.c m3 a.b.c m4 a.b.c m5 a.b.c m6 a.b.c m7 a.b.c
a b c 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
Sortie
Formes canoniques d’une fonction • On appelle «maxterme» (terme somme) la somme de toutes les variables d'entrée (d’une fonction) , non complémentées si leur valeur est 0, complémentées si leur valeur est 1. Entrées
• Pour une table de vérité de 3 variables d’entrées a, b, c les Maxtermes sont: M0,M1,M2,M3,M4,M5,M6,M7
a b c 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1
Sortie
M0 a b c M1 a b c M2 a b c M3 a b c M4 a b c M5 a b c M6 a b c M7 a b c
Formes canoniques d’une fonction La première forme Normale (Forme disjonctive normale ) d’une fonction booléenne est obtenue par la somme des mintermes pour lesquels la fonction a pour valeur 1. Exemple: Soit F une fonction de 3 variables définie par la table de vérité suivante : La première forme canonique de la fonction f est: f(a,b,c)= m3 +m5+ m6 +m7 f(a,b,c) a.b.c a.b.c a.b.c a.b.c
Entrées
Sortie
a b c
s
0 0 0
0
0 0 1
0
0 1 0
0
m3 a.b.c
0 1 1
1
1 0 0
0
m5 a.b.c m6 a.b.c m7 a.b.c
1 0 1
1
1 1 0
1
1 1 1
1
Formes canoniques d’une fonction La Deuxième forme Normale (Forme conjonctive normale ) d’une fonction booléenne est obtenue par la Produit des maxtermes pour lesquels la fonction a pour valeur 0. Entrées
Sortie
a b c
s
M0 ab c M1 ab c M2 ab c
0 0 0
0
0 0 1
0
0 1 0
0
0 1 1
1
M4 a b c f(a,b,c) (ab c).(a b c).(ab c).(ab c)
1 0 0
0
1 0 1
1
1 1 0
1
1 1 1
1
Exemple : Pour la même fonction La deuxième forme canonique est: f(a,b,c)=. M0 . M1 . M2 . M4
La première et la deuxième forme canonique sont équivalentes .
Formes canoniques d’une fonction Exercice: Déterminer la première , la deuxième forme canonique de la fonction inverse à partir de la TV suivante ? La première forme normale :
F ABC ABC ABC ABC La deuxième forme normale :
F (A B C).(A B C).(A B C).(A B C)
Formes canoniques d’une fonction Remarque • On peut toujours ramener n’importe qu’elle fonction logique à l’une des formes canoniques( pour pouvoir trouver sa table de vérité). • Cela revient à rajouter les variables manquants dans les termes qui ne contiennent pas toutes les variables ( les termes non canoniques ). • Cela est possible en utilisant les règles de l’algèbre de Boole : – Multiplier un terme avec une expression qui vaut 1 – Additionner à un terme une expression qui vaut 0 – Par la suite faire la distribution Exemples:
Simplification des fonctions logiques L’objectif de la simplification des fonctions logiques est de : – réduire le nombre de termes dans une fonction – et de réduire le nombre de variables dans un terme • Cela afin de réduire le nombre de portes logiques utilisées réduire le coût du circuit •
• Plusieurs méthodes existent pour la simplification : – La Méthode algébrique – Les Méthodes graphiques : ( ex : table de karnaugh )
Simplification des fonctions logiques Méthode algébrique
1. Méthode algébrique La simplification d'une équation logique se fait très souvent par « calcul » algébrique en cherchant à mettre en facteur les variables et en utilisant les propriétés de l’algèbre de Boole afin d’éliminer des variables ou des termes. c en facteur
1
Simplification des fonctions logiques Méthode algébrique
• Il n’y a pas une démarche bien spécifique pour la simplification algébrique mais on peut citer quelques règles (les plus utilisées) : • Règles 1 : regrouper des termes (factorisation) à l’aide des propriétés et théorèmes de l’algèbre de Bool. Exemple:
•Règles 2 : Rajouter un terme déjà existant à une expression (idempotence) Exemple:
Simplification des fonctions logiques Méthode algébrique
Règles 3 : il est possible de supprimer un terme superflu ( un terme en plus ), c’est-à-dire déjà inclus dans la réunion des autres termes. Exemple1:
Exemple 2 : il existe aussi la forme conjonctive du terme superflu
Simplification des fonctions logiques Méthode Graphique Table KARNAUGH (T.K.):
2. Méthode Graphique • La méthode de KARNAUGH permet: – de visualiser une fonction et d’en tirer intuitivement une fonction simplifier. • L’élément de base de cette méthode est la table de Karnaugh qui représente toutes les combinaisons d’états possibles pour un nombre de variables donné. • La table de Karnaugh est un outil graphique qui permet de simplifier de manière méthodique des expressions booléennes. • La construction des tables de Karnaugh exploite le codage de l’information (code Gray) et la notion d’adjacence.
Simplification des fonctions logiques Méthode Graphique Table KARNAUGH (T.K.):
1. Notion d’adjacence : deux termes sont dit adjacents s’ils ne diffèrent que par la complémentarité d’une, et une seule, variable. • Exemple: et Les deux termes possèdent les même variables. La seule différence est l’état de la variable B qui change.
• Si deux mots sont adjacents sont sommés, ils peuvent être fusionnés(par application des règles) et la variable qui diffère est éliminée. • Exemple
Simplification des fonctions logiques Méthode Graphique Table KARNAUGH (T.K.):
2. Code Gray (binaire réfléchi), est un type de codage binaire permettant de ne modifier qu'un seul bit à la fois quand un nombre est augmenté d'une unité.
Pour passer d'une ligne à la suivante, on inverse le bit le plus à droite possible conduisant à un nombre nouveau.
Simplification des fonctions logiques
Méthode Graphique Description de la méthode: Elle consiste a mettre en évidence par une méthode graphique (un tableau) tous les termes qui sont adjacents (qui ne différent que par l’état d’une seule variable).
•La méthode peut s’appliquer aux fonctions logiques de 2,3,4,5 et 6 variables. •Un tableau de Karnaugh comportent 2n cases ( n est le nombre de variables)
Tableau à 4 variables
Simplification des fonctions logiques Méthode Graphique
Construction du tableau: La table de KARNAUGH a été construite de façon à faire ressortir l’adjacence logique de façon visuelle. • Chaque case représente une combinaison de variables, • la table de vérité est transposée dans le tableau en mettant dans chaque case la valeur de la fonction correspondante.
Simplification des fonctions logiques Méthode Graphique
La fonction représentée par un T.K. s’écrit comme • la somme des produits associés aux différentes cases contenant la valeur 1 (1ère forme canonique). s abc abc abc abc
• Ou le Produit des sommes associés aux différentes cases contenant la valeur 0.(2ème forme canonique)
Simplification des fonctions logiques Méthode Graphique
La Simplification par la table de Karnaugh : •L’idée de base est d’essayer de regrouper (faire des regroupements ) les cases adjacentes qui comportent des 1 ( rassembler les termes adjacents). •Essayer de faire des regroupements avec le maximum de cases (16,8,4 ou 2 ). • Eliminer les variables qui changent d’état. Exemple : Dans cet exemple on peut faire uniquement des regroupements de 2 cases.
11
La variable qui a changé d’état c’est: C donc elle est éliminée.
Simplification des fonctions logiques Méthode Graphique
•Exemple (suite): Puisque il existent encore des cases qui sont en dehors d’un regroupement on refait la même procédure : • former des regroupements. • éliminer la (les) variable(s) qui change(ent) d’état •Une case peut appartenir à plusieurs regroupements •On s’arrête lorsque il n’y a plus de 1 en dehors des regroupements •La fonction final est égale à la réunion (somme ) des termes après simplification.
1 1
0
1
0
1
Simplification des fonctions logiques Méthode Graphique
En résumé pour simplifier une fonction par la table de karnaugh il faut suivre les étapes suivantes : 1. Remplir le tableau à partir de la table de vérité ou à partir de la forme canonique. 2.
Faire des regroupements(le minimum de groupements) de 16,8,4,2,1 cases (maximum de termes) ( Les même termes peuvent participer à plusieurs regroupements ) .
3.
Dans un regroupement :
• Qui contient un seule terme on peut pas éliminer de variables. • • • •
4.
Qui contient deux termes on peut éliminer une variable ( celle qui change d’état ). Qui contient 4 termes on peut éliminer 2 variables. Qui contient 8 termes on peut éliminer 3 variables. Qui contient 16 termes on peut éliminer 4 variables.
L’expression logique finale est la réunion ( la somme ) des groupements après simplification et élimination des variables qui changent d’état.
Simplification des fonctions logiques Méthode Graphique
Trouver les fonctions simplifiées à partir des tableaux suivants:
Circuits logiques Les fonctions logiques sont implémentées à l’aide de circuits logiques On distingue deux types de circuits logiques : • Les circuits combinatoires, dans lesquels les signaux de sortie ne dépendent que des signaux d'entrées du circuit à l'instant considéré. Ex : la plupart des circuits pour l'addition de nombres binaires. • Les circuits séquentiels, disposant de propriétés de mémorisation, et qui présentent donc un certain nombre d'états : les signaux de sortie dépendent des signaux d'entrées à l'instant considéré, mais aussi de l'état du circuit. Ex : mémoires, registres, unité de commande. . .
Remarque: ce cours est une introduction aux circuits combinatoires
Portes logiques Portes logiques • En électronique les deux états d'une variable booléenne sont associés à deux niveaux de tension : V(0) et V(1) pour les états 0 et 1 respectivement. • Toute fonction logique peut être réalisée à l’aide d’un nombre de fonctions logiques de base appelées portes. • La réalisation matérielle des portes logiques est accomplie à l’aide d’une technologie qui comporte des éléments actifs tel que les: transistors.
Portes logiques La porte logique Not: réalisé par deux transistors CMO (Metal Oxide semiConductor) PMOS, NMOS ). Elle inverse l’état de l’entrée Le 1 logique correspond à 5volts Le 0 logique correspond à 0volts
Si on fait entrer un 1 logique le transistor (PMOS) se comporte comme un interrupteur ouvert Et le transistor (NMOS) se comporte comme un interrupteur fermé Si on fait entrer un 0 logique le transistor (PMOS) se comportecomme un interrupteur fermé Et le transistor (NMOS) se comporte comme un interrupteur ouvert
Portes logiques
Portes logiques
Portes logiques
Le circuit d’une fonction logique Exemple : donner le circuit de la fonction suivante:
Toute fonction booléenne d'un nombre quelconque de variables peut s'écrire avec les trois fonctions de base ET, OU et NON On dit que l’ensemble { ET, OU, NON } est complet
Le circuit d’une fonction logique Exemple2 : donner le circuit logique correspondant à la première forme canonique de la fonction présentée par la table de vérité suivante:
Le circuit d’une fonction logique Exemple2 : donner le circuit logique correspondant à la deuxième forme canonique de la fonction présentée par la table de vérité suivante:
Equivalence entre les circuits L’ensemble { NON-OU (NOR) } • { NON-OU (NOR) } est complet • Les portes NON, OU et ET peuvent être obtenues à partir de portes NOR
Equivalence entre les circuits Ensemble { NON-ET (NAND) } • { NON-ET (NAND) } est complet • Les portes NON, OU et ET peuvent être obtenues à partir de portes NAND
Les propriétés de l’Algèbre de Bool en portes logiques
Les propriétés de l’Algèbre de Bool en portes logiques
Les propriétés de l’Algèbre de Bool en portes logiques
Les propriétés de l’Algèbre de Bool en portes logiques
Conception d’un circuit logique Étapes de conception et de réalisation d’un circuit numérique • Pour faire l’étude et la réalisation d’un circuit il faut suivre le étapes suivantes : 1. Il faut bien comprendre le fonctionnement du système. 2. Il faut définir les variables d’entrée. 3. Il faut définir les variables de sortie. 4. Etablir la table de vérité. 5. Ecrire les équations algébriques des sorties ( à partir de la table de vérité ). 6. Effectuer des simplifications ( algébrique ou par Karnaugh). 7. Faire le schéma avec un minimum de portes logiques.
Conception d’un circuit logique Généralement la définition du fonctionnement d’un système est donnée sous un format textuelle . • Pour faire l’étude et la réalisation d’un tel système on doit avoir son modèle mathématique (fonction logique). • Donc il faut tirer ( déduire ) la fonction logique a partir de la description textuelle. Exemple : définition textuelle du fonctionnement d’un système • Une serrure de sécurité s’ouvre en fonction de trois clés. Le fonctionnement de la serrure est définie comme suite : – La serrure est ouverte si au moins deux clés sont utilisées. – La serrure reste fermée dans les autres cas . Donner la schéma du circuit qui permet de contrôler l’ouverture de la serrure ?
Conception d’un circuit logique L’exemple de la serrure (suite): – Le système possède trois entrées : chaque entrée représente une clé. – On va correspondre à chaque clé une variable logique: • la clé1 A, • la clé 2 B • la clé 3 C • Si la clé 1 est utilisée alors la variable A=1 sinon A =0 • Si la clé 2 est utilisée alors la variable B=1 sinon B =0 • Si la clé 3 est utilisée alors la variable C=1 sinon C =0 – Le système possède une seule sortie qui correspond à l’état de la serrure ( ouverte ou fermé ). – On va correspondre une variable S pour designer la sortie : • S=1 si la serrure est ouverte , • S=0 si elle est fermée
Conception d’un circuit logique S=F(A,B,C) F(A,B,C)= 1 si au mois deux clés sont introduites F(A,B,C)=0 si non . • On établit la table de vérité de la fonction: •On déduit la forme canonique( 1ère , ou 2ème) •On fait la simplification (pour minimiser les composants du circuit) Algébrique ou par la méthode de Karnaugh : •Etablir le schéma du circuit (exercice)
Exemple d’un circuit(de l’UAL) L’ Additionneur Demi-additionneur Pour la conception d'additionneurs, une brique qui peut être utilisée est le demi-additionneur ou half adder : • entrées : deux bits à sommer a et b ; • sorties : un bit de somme s et un bit de retenue sortante rs . Un demi-additionneur ne peut pas prendre en compte de retenue entrante.
Exemple d’un circuit(de l’UAL) L’ Additionneur Additionneur(1bit). Intéressons nous donc à un additionneur 1 bit complet ou full adder : • entrées : deux bits à sommer a et b, et un bit de retenue entrante re ; • sorties : un bit de somme s et un bit de retenue sortante rs .
Additionneur 1bit On en déduit le circuit d'un additionneur 1 bit complet ou full adder :
On peut représenter les portes du Half adder par un seul boitier
Additionneur de 2entiers de n bits On peut enchaîner n full adders de manière à obtenir un additionneur de deux entiers naturels de n bits.
FA
FA
FA
FA
Additionneur de 2entiers de n bits Voici par exemple un additionneur de 2 entiers naturels de 4 bits
Annexe Code gray (explication) Pour passer d'une ligne à la suivante, on inverse le bit le plus à droite possible conduisant à un nombre nouveau. Le nom de code binaire réfléchi vient d'une méthode de construction plus pratique pour choisir quel bit inverser quand on passe d'un nombre au suivant : • on choisit un code de départ : zéro est codé 0 et un est codé 1. • puis, à chaque fois qu'on a besoin d'un bit supplémentaire, on symétrise les nombres déjà obtenus (comme une réflexion dans un miroir).² • enfin, on rajoute un 0 au début des « anciens » nombres, et un 1 au début des nouveaux nombres. Exemple: