L’addition de nombres binaires est un processus légèrement étrange, et au premier abord peut sembler légèrement déconcertant. Mais en vérité, cela ressemble beaucoup à l’addition de nombres décimaux que l’on nous enseigne dans le cadre des mathématiques élémentaires – à l’exception évidente que nous travaillons avec deux chiffres plutôt que dix!
Pour commencer à penser à l’addition en termes binaires, regardons l’addition binaire de deux valeurs de 1 bit – la forme d’addition la plus simple que nous puissions imaginer:
Le tableau ci-dessus représente les règles logiques fondamentales de l’addition binaire. Les nombres à gauche du tableau représentent les valeurs binaires que nous essayons d’ajouter, et les nombres à droite représentent le résultat de cette addition. Cela pourrait avoir du sens en dehors de l’étrange colonne de transport qui est soudainement apparue!
La colonne de report indique les résultats où nous avons dépassé la quantité que nous pouvons représenter avec un seul bit. Avoir un bit supplémentaire pour représenter cela agit comme un mécanisme pour déplacer (ou transporter) des valeurs supérieures dans la colonne unitaire suivante (en binaire, ces colonnes d’unités sont 1, 2, 4, 8… etc) lors du calcul de l’addition. Intuitivement, vous pouvez penser à cela de la même manière que nous pouvons « porter » des valeurs décimales dans leur colonne d’unités suivante (1, 10, 1000… etc) lors du calcul de l’addition décimale à la main.
Mais qu’en est-il de l’implémentation en tant que matériel? Eh bien, comme la méthode d’addition utilise une logique de base, elle peut être construite comme un circuit numérique représenté par le schéma ci-dessous.
Ce circuit prend deux valeurs binaires de 1 bit en entrée (A & B), produit un résultat (R) et une valeur de report (comme le report est une sortie du résultat, nous l’appellerons « effectuer », ou Cout pour faire court). Ce comportement est ce qui définit un « demi-additionneur » – un mécanisme permettant d’effectuer une addition binaire de 1 bit.