L'additionneur binaire est une partie essentielle de l'unité arithmétique et logique (ALU) d'un microprocesseur.
L'additionneur complet un bit permet de faire la somme des bits de même poids de deux nombres binaires en tenant compte d'une retenue éventuelle du bit de poids inférieur.
Pour réaliser l'addition de deux nombres binaires, deux méthodes sont possibles :
Addition série.
Les nombres sont inscrits dans des registres à décalage et les chiffres à additionner sont présentés séquentiellement à l'additionneur en commençant par le bit de poids le plus faible. La retenue est transmise par une bascule. Le montage ne nécessite qu'un petit nombre de composants mais il faut n tops d'horloge pour effectuer l'addition de nombres de n bits.
Addition parallèle.
L'additionneur parallèle donne de manière pratiquement instantanée le résultat de l'opération mais il nécessité un plus grand nombre de circuits car il faut utiliser un additionneur complet pour chaque bit.
La sortie retenue du circuit n − 1 est reliée à l'entrée retenue du circuit n.
La durée de l'opération est celle du temps de propagation de la retenue.
Les circuits intégrés de type 7483 sont des additionneurs parallèles 4 bits. Deux circuits de ce type en cascade permettent l'addition de deux nombres de 8 bits en 25 ns.
Soustraction
Pour effectuer des soustraction on utilise les propriétés du complément à 2. Soit Y le nombre binaire obtenu en remplaçant les 1 de Y par un 0 et les 0 par un 1. Effectuer D = X − Y est équivalent à D = X + Y + 1 en complément à 2.
Le bit de poids faible de l'additionneur n'a pas de retenue d'entrée. Pour ajouter le 1 à D, il suffit de mettre un 1 comme retenue dans l'additionneur de poids faible.
Soit C un signal de contrôle valant 0 si on veut faire une addition, et 1 si on veut faire une soustraction.
On utilise ce signal C comme retenue du bit de poids faible de l'additionneur.
Pour avoir Y il suffit d'ajouter une porte XOR réalisant (Y XOR C) en entrée de chacun des additionneurs complets : Si C vaut 0, la valeur d'entrée de l'additionneur n est Yn (suiveur) et si C vaut 1, la valeur d'entrée est Yn (inverseur).
Donc, si C vaut 0, l'opération effectuée par le circuit est l'addition X + Y, et si C vaut 1, l'opération effectuée est X −
Y.
Le bit de la retenue finale devient un bit de signe. (bit à 1 résultat positif, bit à 0 résultat négatif).
Utilisation
Le programme simule un additionneur soustracteur parallèle 4 bits.
Pour changer l'état des entrées, il suffit de cliquer avec la souris dans le cadre qui représente l'inverseur correspondant à chaque bit des nombre à additionner.
Les valeurs décimales de X, Y et de leur somme S sont également affichées.
Vérifier que en mode additionneur S (en décimal) est égal à S1 + 2.S2 + 4 S3 + 8.S4 + 16.R4