Académique Documents
Professionnel Documents
Culture Documents
𝑁 = ∑ 𝑎𝑖 . 𝑏 𝑖 ; 0 ≤ 𝑎𝑖 ≤ 𝑏
𝑖=0
Remarques :
- Un chiffre d’un nombre binaire est dit bit (concaténation de Binary Digit)
- Le chiffre le plus significatif est appelé MSB (Most Significant Bit)
- Le chiffre le moins significatif est appelé LSB (Least Significant Bit)
- Le chiffre correspondant à la puissance 2 est appelé bit de poids (rang) 2
1
Université de BBA Département d’Electronique T. Abed
III. Opérations arithmétiques en binaire
Les nombres binaires non-signés s’écrivent sur n bits de la manière suivante :
𝑛
𝑋 = ∑ 𝑎𝑖 . 2𝑖 ; 𝑎𝑖 = 0,1
𝑖=0
De cette manière, ne peuvent être représentés que les nombres allant de 0 à 2n-1-1 (dynamique).
III.1 L’addition
0 + 0 = 0 ; 0 + 1 = 1 ; 1 + 0 = 1 ; 1 + 1 = 0 et report 1 ; (report ou carry en anglais)
III.2 La soustraction
0 - 0 = 0 ; 1 - 0 = 1 ; 1 - 1 = 0 ; 0 - 1 = 1 et retenue 1
III.3 La multiplication
0x0=0;1x0=0;0x1=0;1x1=1
Remarque :
Pour les opérations d’addition et de soustraction, si les opérandes sont écrits sur m bits, le résultat sera écrit
également sur m bits mais avec éventuellement un bit supplémentaire pour la retenue. Pour la multiplication, si les
deux opérandes sont écrits sur m et n bits, le résultat dans ce cas devra être écrit sur m+n bits.
III.4 La division
Le même algorithme que dans le cas du décimal.
IV. La complémentation
IV.1 Le complément à 1
On forme le complément à 1 d’un nombre binaire en soustrayant de 1 chaque bit de ce nombre. Ce qui consiste à
remplacer 1 par 0 et 0 par 1.
2
Université de BBA Département d’Electronique T. Abed
V.2 Représentation en complément à 2 (C2)
Dans cette méthode, les nombres positifs ont la même représentation que dans la méthode SVA. Les nombres
négatifs sont formés en prenant le complément à 2 du nombre positif correspondant. Cette méthode permet de
représenter avec n bits tous les nombres de -(2n-1) à +(2n-1-1), soit un nombre en plus par rapport à la méthode S.VA,
c’est la représentation négative du zéro.
Remarque : Le nombre de bits utilisés est très important car la représentation d’un nombre négatif est différente
selon que l’on utilise tel ou tel nombre de bits.
Remarque : En binaire non-signé, pour représenter sur M bits, un nombre écrit sur N bits (avec M > N), on doit
réaliser l’extension du zéro, qui consiste à ajouter 0 (zéro) (M-N) fois sur les bits de poids forts. Cependant, En
binaire signé, selon la représentation en C2, pour représenter sur M bits, un nombre écrit sur N bits (avec M > N), on
doit réaliser l’extension du signe, qui consiste à dupliquer le bit signe (M-N) fois sur les bits de poids forts.
Arithmétique en Cà2 :
Addition et soustraction :
L’arithmétique en C2, permet de substituer l’opération de soustraction par à une addition.
A - B = A + (-B) = A + C2(B)
Remarque : On reconnait un cas de dépassement de capacité, lorsque la somme de deux nombres ayant le même
signe génère un résultat d’un signe différent.
Multiplication et décalage
Le résultat de la multiplication de deux nombres non signés sur N bits, s’écrit sur 2N bits. Pour des nombres signés il
s’écrit sur 2N-1 bits uniquement, car il y a un bit de signe redondant. Les multiplications et divisions par les
puissances de 2 peuvent être effectuées par des décalages à gauche ou à droite respectivement. Lors des décalages
arithmétiques à droite, le bit de signe est étendu. Lors des décalages à gauches des zéros sont introduits dans bits de
poids faible.
Addition :
Si A, B sont les représentations Qk de a et b, alors A+B est la représentation Qk de a+b. Comme en décimal, on ne
peut effectuer une addition que si les virgules sont alignées.
Multiplication :
Si A est la représentation Qk de a et B la représentation Ql de b, alors A*B est la représentation Qk+l de a×b. Pour des
nombres signés, la multiplication en virgule fixe de deux nombres sur N bits, donne un résultat sur 2N-1 bits.
Décalage :
Si A est la représentation Qk de a, alors :
Le décalage n fois à gauche (2nA) est la représentation Qk+n de a, et
Le décalage n fois à droite (2-nA) est la représentation Qk-n de a
3
Université de BBA Département d’Electronique T. Abed
VI.2 Représentation en virgule flottante
Cette représentation permet d’écrire un nombre X sur N bits (N = 1+m+e) de la manière suivante X = (-1)S . M . 2E
S : Signe (1 bit) , M (Mantisse) : réel positif codé sur m bits, E (Exposant) : Entier signé écrit sur e bits
Afin de normaliser la représentation, M doit satisfaire la condition : 1 ≤ M < 2.
Il peut donc être codé uniquement par sa partie fractionnaire F, son bit de poids fort étant implicitement à 1. M = 1,F
Le standard IEEE 754 (simple précision : 32bits et double précision : 64bits) permet de représenter les nombres réels
sous la forme : X = (-1)S . 1,f . 2e-127
S : le signe (1 bit)
e : l’exposant biaisé (ou décalé) est un entier non signé codé sur 8 bits en simple précision (11 en double précision).
f : la partie fractionnaire codée sur 23 bits en simple précision (52 en double précision)
- L’utilisation de l’exposant biaisé permet d’exprimer une grande dynamique de nombres.
- Les nombres signés sont représentés par la méthode signe et valeur absolue.
- Les valeurs 00000000 et 11111111 de e sont particulières. La valeur 11111110 indique un exposant de 254 -
127 = 127 et la valeur 00000001 indique un exposant de 1 - 127 = -126
- Le plus petit nombre (en valeur absolue) représentable est donc 1x2-126
- Le plus grand nombre représentable est 1,11111111111111111111111 x 2127
Il y a quatre représentations non normalisées :
1. Représentation dénormalisée
Le champ pour l’exposant est 00000000 (simple précision) ce qui signifie un exposant de -127. La valeur de la
mantisse est 0 < v < 1 avec tous les bits représentés. Un nombre réel x est représenté par : x = (-1)S. 0,f . 2-127
- Le plus grand nombre dénormalisé est donc 0,11111111111111111111111x2-127 soit presque 2-127
- Le plus petit nombre dénormalisé est 0,00000000000000000000001x2-127 soit 2-150.
2. Représentation de zéro
La valeur zéro est représentée par un champ exposant de 00000000 et un champ mantisse de
00000000000000000000000. Il y a deux représentations pour zéro, dont une positive et une négative selon la valeur
du champ signe.
3. Représentation de l’infini (±∞)
Le champ exposant est 11111111 et le champ mantisse est 00000000000000000000000. Cette valeur est générée
par des opérations arithmétiques dont le résultat dépasse ce qui est représentable de façon normalisée. Cette valeur
est aussi acceptable en tant qu’opérande des opérations arithmétiques.
4. NaN (Not a Number)
Certaines opérations, par exemple la division de l’infini par l’infini, donnent un résultat indéfini, dont la
représentation contient le champ exposant 11111111 et n’importe quelle configuration de bits sauf
00000000000000000000000 du champ mantisse.
Addition :
Pour l’addition et la soustraction, il faut d’abord ajuster l’exposant du plus petit (B) des deux opérandes pour que les
deux exposants soient identiques. A+B = MA.2EA + MB.2EB = (MA + MB. 2EA-EB).2EA
Multiplication :
Pour la multiplication, il suffit de multiplier les mantisses et d’additionner les exposants. Il faut aussi éventuellement
normaliser le résultat. A.B = MA . MB . 2EA+EB