Sunteți pe pagina 1din 13

1. - LES ADDITIONNEURS 1. 1.

- ADDITION DE DEUX CHIFFRES BINAIRES

Dans le systme binaire, on peut reprsenter n'importe quel nombre comme dans le systme dcimal et l'on peut effectuer les quatre oprations arithmtiques lmentaires : addition, soustraction, multiplication et division. Comme nous le savons, les trois dernires oprations peuvent tre toutes ramenes l'addition qui est donc la plus importante. Nous allons tout d'abord rappeler l'addition de deux nombres binaires de 1 bit, nous obtenons les 4 sommes suivantes :

0+0=0 0+1=1 1+0=1 1 + 1 = 10

1er cas : les deux chiffres sont 0 et la somme est 0.

2me et 3me cas : un chiffre vaut 0, l'autre vaut 1 : la somme vaut 1.

4me cas : Les deux chiffres valent 1 et la somme vaut 10 (= 210).

On remarque que dans les trois premiers cas, il suffit d'un seul chiffre binaire (ou bit) pour indiquer le rsultat. Dans le quatrime cas, il faut deux chiffres : celui situ le plus droite est le rsultat (ici 0) et l'autre est la retenue (ici 1).

La procdure dcrite est la mme que pour l'addition dans le systme dcimal. Elle diffre seulement par la quantit de chiffres mise en jeu : les deux chiffres binaires contre les dix dcimaux. La figure 1 montre les additions des chiffres 0 et 1 relatives aux deux systmes.

Nous remarquons que les rsultats sont les mmes, bien que dans le systme binaire il faille tenir compte de la retenue pour exprimer le rsultat deux.
1. 2. - CIRCUIT ADDITIONNEUR

Puisque nous connaissons les rgles de l'addition binaire, nous allons voir prsent comment cette opration peut tre ralise par des circuits logiques. Il faut raliser un circuit combinatoire (figure 2) dont les deux entres A et B et les sorties S et C rpondent la table de vrit de la figure 1. On remarque que S est l'tat 1 si une seule des entres est l'tat 1.

Nous avons donc affaire la fonction logique OU Exclusif, soit :


S=A B

D'autre part, on remarque que C est l'tat 1 uniquement dans le cas o A et B sont l'tat 1. On en dduit donc que :
C=A.B

Le circuit qui effectue la somme de deux bits peut tre obtenue en associant une porte OU Exclusif et une porte ET comme le montre la figure 3.

1. 3. - ADDITION DE NOMBRES BINAIRES DE PLUSIEURS CHIFFRES

Le circuit additionneur examin prcdemment est en mesure d'additionner entre eux deux nombres binaires d'un seul chiffre. Pour cette raison, il est appel demi-additionneur. En effet, lorsque l'on doit additionner des nombres de plus d'un chiffre, il devient ncessaire de disposer de circuits qui tiennent

compte de la retenue de la somme effectue sur les chiffres de rang immdiatement infrieur. Pour comprendre cela, nous allons examiner comment on effectue l'addition de deux nombres dcimaux, par exemple :

Cette opration s'effectue par tapes successives : on additionne d'abord les chiffres de droite, puis les suivants en ajoutant l'ventuelle retenue. Dans un premier temps, on fait l'addition de 4 et 8 dont la somme est 12 ; on crit le rsultat 2 et on retient 1.

Dans l'tape suivante, on doit faire une addition de 3 chiffres parce qu'on doit tenir compte de la retenue (ici 1). La somme de 7 et 5 plus la retenue 1, donne 13 ; on crit donc 3 et on retient 1.

La dernire tape est semblable la prcdente : la somme 8 est cependant sans retenue. La mme procdure s'applique aussi aux nombres binaires. Il faut donc raliser un circuit qui puisse additionner les deux chiffres de mme rang d'un nombre binaire avec la retenue de l'tage prcdent, soit trois chiffres binaires. L'additionneur complet dispose donc de trois entres, deux pour les termes et une pour la retenue. Soit effectuer la somme des deux nombres binaires de 8 bits suivants :

Ce qui donne en code dcimal :

On part de la dernire position droite, o se trouvent deux 1. On effectue la somme de ces deux chiffres selon la table de la figure 1, ce qui donne comme rsultat 0 et comme retenue 1.

A l'tape suivante, on doit additionner 3 chiffres alors que la table de la figure 1 se limite la somme de 2 chiffres. Nous allons donc construire une table indiquant la somme de 3 chiffres. Avec 3 chiffres, il y a 8 possibilits qui vont de 0 + 0 + 0 1 + 1 + 1. Pour chacune de ces possibilits, il est facile de relever la somme. Par exemple :

0 + 0 + 0 = 0 (rsultat 0, retenue 0) 0 + 1 + 1 = 210 = 10 (rsultat 0, retenue 1) 1 + 1 + 1 = 310 = 11 (rsultat 1, retenue 1).

La table de la figure 4 rsume toutes les combinaisons possibles.

Dans cette table, Ai et Bi sont les termes de rang : Ci est la retenue relative la somme de Ai et Bi ; Ci + 1 est la retenue relative la somme de Ai, Bi et Ci. Si est le rsultat de la somme Ai, Bi et Ci. Revenons maintenant la somme prise en exemple ; en utilisant la table de la figure 4, on obtient pour les termes de rang 2 : 1 + 0 + 0 = 1 avec une retenue gale 0.

Si l'on additionne les chiffres suivants, on a :

Et ainsi de suite jusqu'au rsultat final :

Vrifions Le rsultat :
11010110 = (1 x 128) + (1 x 64) + (0 x 32) + (1 x 16) + (0 x 8) + (1 x 4) + (1 x 2) + (0 x 1) = 128 + 64 + 16 + 4 + 2 = 214.

1. 4. - CIRCUIT ADDITIONNEUR COMPLET

Il faut donc raliser un circuit qui corresponde la table de vrit de la figure 4, on obtient le schma de la figure 5 qui reprsente un additionneur complet.

Cherchons prsent l'quation de Ci + 1 et Si en utilisant la table de la figure 4. Pour cela, dressons les tableaux de Karnaugh correspondants reports la figure 6.

Du premier tableau de Karnaugh, on tire l'quation de Si suivante :

Si = Ci . i . i + i . i . Bi + Ci . Ai . Bi + i . Ai . = Ci . ( i . i + Ai . Bi) + i . ( i . Bi + Ai . i) = Ci + i . (Ai Bi) = Ci (Ai Bi)

Dans le deuxime tableau de Karnaugh, Nous n'avons pas recherch les groupements optimaux et ce, pour pouvoir mettre en vidence la fonction Ai Bi dj ralis avec la somme Si. En effet, les 3 groupements indiqus nous donnent l'quation de Ci + 1 suivante :

Ci + 1 = AiBi +

iBiCi + Ai Bi)

iCi

= AiBi + Ci (
= AiBi + Ci (Ai

iBi + Ai

Les deux expressions Si et Ci + 1 qui viennent d'tre calcules, nous dduisons le schma logique d'un additionneur complet reprsent la figure 7.

L'additionneur complet est le circuit de base pour effectuer la somme de nombres de plusieurs bits. Il existe deux mthodes d'addition des nombres binaires. La premire utilise un seul additionneur complet auquel on prsente les chiffres de mme rang des nombres additionner. Il s'agit de lasomme en srie.

La deuxime fait appel autant d'additionneurs complets qu'il y a de chiffres dans les nombres ajouter. Il s'agit de la somme en parallle.

1. 5. - SOMME EN SRIE Les deux nombres (ici de 8 bits) additionner sont chargs dans deux registres A et B comme on le voit la figure 8. Le rsultat de la somme est stock dans un troisime registre S. Il faut aussi disposer d'une bascule synchrone de type D qui sert mmoriser la retenue de la somme partielle prcdente.

Les 3 registres et la bascule sont commands par le mme signal d'horloge qui synchronise toute l'opration. Le fonctionnement du circuit est le suivant. Au dbut, la bascule doit tre mise 0 en activant l'entre CLEAR. Par contre, les 3 registres n'ont pas besoin d'tre remis 0. Les deux termes de la somme sont chargs dans les registres A et B avec une premire impulsion d'horloge. Les deux premiers chiffres de chaque terme (L.S.B.) sont alors prsents la sortie des registres et donc aux entres de l'additionneur. Ainsi, on trouve la sortie Si le premier rsultat partiel et la sortie Ci + 1 la premire retenue.

La situation est celle qui apparat la figure 9 ou l'on additionne les deux nombres de l'exemple prcdent.

La deuxime impulsion d'horloge produit les faits suivants : Le premier rsultat partiel est stock dans le premier tage du registre S. La premire retenue est mmorise par la bascule. Les contenus des registres A et B se dcalent d'un tage vers la droite ; ainsi les chiffres de poids immdiatement suprieur se prsentent aux entres du sommateur. Nous nous trouvons alors dans la situation de la figure 10. La bascule est dsormais symbolise par un carr l'intrieur duquel est inscrit son tat.

La donne prsente sur l'entre srie des registres est sans importance. L'addition se droule de faon identique pour les chiffres suivants. Aprs 9 impulsions d'horloge (une pour le chargement de A et B et 8 pour effectuer la somme), le rsultat de la somme se trouve stock dans le registre S tandis que la sortie de la bascule indique la retenue. Nous nous trouvons dans la situation de la figure 11.

L'addition prise en exemple a pour retenue finale 0, ce qui signifie que le rsultat 1101 0110 est juste.

Si la bascule est l'tat 1, cela signifie que la dernire somme a donn lieu une retenue de 1. On dpasse ainsi la capacit du circuit, cela est dsign par le terme anglais overflow qui signifie dborder. Il y a overflow lorsque le nombre qui est le rsultat de la somme a plus de bits que ceux qui peuvent tre contenus dans le registre (dans notre cas 8). Avec 8 bits, le nombre le plus lev que l'on peut reprsenter est : 1111 11112 = 25510. Avec des registres 8 bits, on peut donc additionner les nombres compris entre 0 et 255 (exprims en code dcimal), mais le rsultat de leur somme ne doit pas lui-mme dpasser 255. Dans le cas contraire, on obtiendrait un rsultat qui, pour tre stock, ncessiterait un registre de 9 bits. En utilisant un ordinateur ou un circuit sommateur, il est toujours ncessaire de faire attention ne jamais en dpasser la capacit. L'overflow donne des rsultats errons. Supposons que l'on effectue la somme suivante :

Le dernier chiffre gauche du rsultat ne trouvant pas de place dans le registre S est perdu. Le rsultat qui est indiqu par le contenu de S est0100 0000, ce qui quivaut 64 en code dcimal et non 320 qui est le vrai rsultat. Pour savoir s'il y a dpassement, il suffit d'examiner l'tat de la bascule la fin de l'addition : si elle est l'tat 0, le rsultat est juste ; par contre, si elle est l'tat 1, cela indique qu'il y a eu une retenue de 1 lors de la dernire addition et que l'on a dpass la capacit du circuit. On peut faire l'conomie du registre S en rebouclant la sortie S de l'additionneur sur l'entre srie du registre A ou B. Si l'on relie par exemple la sortie S l'entre srie du registre A, comme illustr la figure 12, le rsultat de l'addition apparatra dans le registreA. En effet, chaque impulsion d'horloge, le rsultat partiel de chaque somme se trouve dcal dans le registre A.

La mthode de la somme en srie est la plus proche de notre faon usuelle d'effectuer des additions : on additionne un chiffre la fois en partant de celui de plus faible poids. Toutefois, elle est plutt lente parce qu'elle requiert autant d'impulsions d'horloge qu'il y a de chiffres additionner. Pour plus de rapidit, on fait appel la mthode de la somme en parallle o tous les chiffres sont additionns simultanment. Selon le mode de calcul de la retenue, on distingue la somme en parallle avec retenue srie et la somme en parallle avec retenue anticipe.

S-ar putea să vă placă și