Académique Documents
Professionnel Documents
Culture Documents
(suite)
1
Addition Binaire
1 Retenues intermédiaires
10001001
+ 11001000
101010001
A B A-B Retenue
11011001 Opérande 1
0 0 0 0 10101110 Opérande 2
1 11 1 Retenues
0 1 1 1 intermédiaires
00101011 Résultat
1 0 1 0
1 1 0 0
Table de vérité
3
Multiplication binaire
Table de vérité
4
Division binaire
5
Représentation du signe
• Nombres entiers signés
On réserve un digit binaire pour le signe, les autres bits représentant la
valeur absolue du nombre.
Par convention le bit de signe est le bit de plus fort poids (MSB : Most
Significant Bit) situé le plus à gauche du nombre binaire.
Il vaut 0 lorsque le nombre est positif et 1 lorsqu’il est négatif.
Exemple :
6
Le complément à un
7
Le complément à deux
8
• Représentation en complément
– Complément restreint (Complément à 1)
Il s’obtient par inversion des valeurs des bits constituant le nombre:
9
Exemple
10
Exemple
11
Règle
(n-1) (n-1)
-( 2 ) <= N<= + ( 2 - 1)
12
Exemple
13
Exemple
14
Soustraction avec complément |A| > |B|
B= 00011101
Complément à 1: 1 1 1 0 0 0 1 0
+1 :+ 1
Complément à 2 : 1 1 1 0 0 0 1 1
15
Soustraction avec complément |A| > |B|
• A + (-B) =
01001100 A
+ 1 1 1 0 0 0 1 1 -B
Retenue négligée
1 0 0 1 0 1 1 1 1 +47
Signe +
16
Soustraction avec complément |A| < ou = |B|
B= 01001100
Complément à 1: 1 0 1 1 0 0 1 1
+1 :+ 1
Complément à 2: 1 0 1 1 0 1 0 0
17
Soustraction avec complément |A| < ou = |B|
• A + (-B) =
00011101 A
+ 1 0 1 1 0 1 0 0 –B
0 1 0 1 0 0 0 1 - 47
Signe (-)
18
Exercices
• 10101010 + 00110011=
• 11001101 + 11100011=
• 10101010 - 00110011=
• 11001101 - 01100011=
• 10101010 * 00110011=
• 11001101 * 01100011=
19
Nombre réel
• Un nombre réel en décimal est représenté
en décimal sous la forme :
m
d= ∑ 10 * d
i
i
i= -n
• Par exemple:
1 0 -1 -2
35,67:3 * 10 + 5 * 10+ 6 * 10 +5 *
10=3567/100
20
Nombre réel
• En binaire:
b= ∑ 2 * b i
i
i= -n
• Par exemple 110.11 en base binaire:
2 1 0 -1 -2
1 * 2 + 1 * 2+ 0 * 2 +1 * 2+1 * 2
6 3/4
21
Réel en binaire
• Passage d’un nombre réel en base
décimal vers la base binaire:
0,375(10)= ?(2)
0,375 * 2 = 0,75
0,75 * 2 = 1,5
0,5 * 2 = 1,0
0,375(10) = 0,011(2)
22
0,3(10) = ? (2)
0,3 * 2 = 0,6
0,6 * 2 = 1,2
0,2 * 2 = 0,4
0,4 * 2 = 0,8
0,8 * 2 = 1,6
0,6 * 2 = 1,2
…
0,3 =
0.01001[1001] 23
Codage des réels en binaire
3
563, 8902 = (+)0,5638902 *
10
Signe Mantisse Exposant
24
Codage des réels en binaire
• Un même nombre réel peut être écrit de différentes façons.
Par exemple:
(+ ou -) e
(+ ou -) 1.bbb…b *
• Comme, sous cette forme, le bit le plus signifiant est toujours
égal 2
a 1, il n'est pas nécessaire de le coder: il est implicite
25
Exemple
• Supposons la représentation suivante:
Signe
Exposant Mantisse
3
+1100.1 = +1.1001 * 2
00111001
26
Problèmes
a) Comment représenter le chiffre zéro ?
Solution : le nombre zéro est représente avec tous
les bits a 0.
b) Comment représenter un exposant négatif?
• Comme un exposant est un nombre entier signe,
une solution serait de le représenter en complément
a 2. Ce n'est toutefois pas la solution choisie…
• En général, l'exposant est représente de façon
biaisée: une constante, le biais, doit être soustrait
de la valeur dans le champ pour obtenir la vraie
valeur de l'exposant:
champ exposant = exposant + biais
27
Typiquement, la valeur du biais estK-1 2 -1, ou k est le nombre
de bits du champ de l'exposant
K-1
Avec max
E =2 -1,min
E =1 -max
E
• Exemple:
si k=4, la valeur du biais sera 7, l'exposant pourra avoir
3
une valeur entre -2 +1 et3 2 , et la valeur représentée dans
le champ exposant sera exposant+biais
Champ exposant Exposant Champ exposant Exposant
0000 Non 1000 1
normalise
1001 2
0001 -6
1010 3
0010 -5
1011 4
0011 -4
1100 5
0100 -3
1101 6
0101 -2
0110 7
0110 -1
0111 INFINI 28
Exemple
01010101
+0.0
+
5-3=2
00000000 0101
2
+1.0101*
2
0
+1.0 = +1.0000 * 2
00110000
29
Standard IEEE 754
• Forme normalisé selon
1.f × 2e
f est la partie fractionnaire (ou mantisse)
e est l’exposant de la puissance de 2
• Attention
Le premier 1 n’est pas stocké mais est présent
Un bit supplémentaire stocke le signe (pas de
représentation en complément)
Deux représentations : simple précision et
double précision
30
Standard IEEE 754
• Précision simple:
Nombre de bits: 32
Mantisse sur 23 bits
Exposant sur 8 bits (biais = 128-1 - 1 = 127)
31
Précision simple
• Exemple:
1 10000000 010010000000000000000000
128-127
- 1. 01001 * 2
-4
- (1+ (0* 2 ) + (1* 2 ) + (0* 2 ) + (0* 2 ) + -5
-1 -2 -3
(1* 2 ) )
*2
- (1+(1/4 ) + (1/32)) * 2
- 2,5625
32
Exercice
Convertir du simple précision vers décimal:
a. 01000001001001000000000000000000
b. 1 10000010 00110000000000000000000
c. 1 10000010 11110110000000000000000
d. 01000000111100000000000000000000
e. 11000010000011100000000000000000
f. 0 10000010 11000000000000000000000
Quelle est la représentation binaire de chaque nombre
décimale suivants :
a. 3.15
b. -123.75
c. 6.125
33
Double précision
• Double précision (64 bits)
Signe : 1 bit
Exposant : 11 bits
Biais : 1023
Mantisse : 52 bits
34
Exercice
• Trouver le nombre à virgule correspondant
à:
a) 110001000110100100111100001110000000000000000
0000000000000000000
35