Représentation Binaire Des Nombres Relatifs
Représentation Binaire Des Nombres Relatifs
Représentation Binaire Des Nombres Relatifs
+ 127 (0 1111111)2
+ 0 (0 0000000)2
- 0 (1 0000000)2
- 127 (1 1111111)2
Inconvénient:
Cette représentation ne convient pas pour représenter les nombres négatifs : 0 a
deux représentations, la somme de deux nombres opposés n’est pas nulle
2
Représentation binaire des nombres relatifs
Complément à 1 d’un nombre binaire
• Le complément à 1 « ou Complément restreint (CR) » d’un nombre est obtenu en
→ →
inversant chaque bit (0 1 et 1 0).
⇒ Complémenter chaque bit de grandeur
• Exemple : (+29) 10 = (011101)2 ( représenté sur 6 bits)
CR(29) 10 = (100010)2
• Limites sur 8 bits:
+ 127 (0 1111111)2
+ 0 (0 0000000)2
- 0 (1 1111111)2
- 127 (1 0000000)2
• Sur n bits:
x + CR(x) = 2n - 1
3
Représentation binaire des nombres relatifs
Complément à 2 d’un nombre binaire
Le complément à 2 « ou Complément Vrai (CV) » d’un
nombre est le complément à 1 auquel on ajoute 1
⇒ CV = CR + 1
CR(29) = (100010)2
CV(29) = CR(29) + 1 = (100011)2
(- 29)10 = CV(29)
✔ Ce type de codage permet la représentation des
nombres négatifs dans les ordinateurs et ce sur 8, 16 ou
4
32 bits .
Représentation binaire des nombres relatifs
Complément à 2 d’un nombre binaire
soit x un nombre binaire qui s’écrit sur n bits alors
CV(x) = - x
• En effet :
on a:
n
x + CR(x) = 2 n - 1
⇒
bits
x + CR(x) + 1 = 2 n
⇒ x + CV(x) = 2n = (1000….00000)2
⇒ x + CV(x) = 0 sur n bits
⇒ CV(x) = - x
5
Représentation binaire des nombres relatifs
8
Représentation hexadécimale des nombres relatifs
• Complément à 16
De la même façon, en notation hexadécimale, on peut
utiliser le complément vrai ou le complément à 16 pour
représenter les nombres négatifs.
Pour A>0, -A = CV(A) = CR(A)+1
Où CR(A) est obtenu en complémentant à F le nombre
A exprimé en hexadécimale
Exemple:
Sur 4 digits : +22 = (0016) 16
CR(22) = (FFE9) 16
-22 = CV(22) = CR(22)+(0001) 16 = (FFFA) 16
9
Problèmes liés à la longueur des nombres
Les circuits traitant des nombres de n bits, y compris le bit
de signe, peuvent manipuler tous les nombres compris entre
- 2n-1 et 2n-1 -1
• Exemple :n = 8 ⇒
intervalle allant de – 128 à + 127
• Les résultats partiels ou définitifs d’opérations
mathématiques ne doivent pas sortir de cet intervalle
• Cas de l’addition:
• Une retenue peut apparaître (CARRY)
• Un dépassement de capacité est aussi possible (OVERFLOW)
• L‘Overflow est un dépassement de mémoire, car le nombre de bits en
notre disposition est insuffisant pour coder l'information.
10
Problèmes liés à la longueur des nombres
• Addition sur 8 bits ⇒ intervalle allant de – 128 à + 127
11
Représentation des réels
• Nombres à virgule fixe
Inconvénients :
• étendue de représentation limitée
• 32 bits seulement pour la partie entière
• 32 bits seulement pour la partie fractionnaire
• Perte de précision pour les petits nombres
12
Représentation des réels
• Nombres à virgule flottante
N = (-1) s × 1.M ×B e
où : M = mantisse
B = base
e = exposant
s = signe de la mantisse
Exemples:
(101)10 = 1.01 × 102 = 0.101 × 10 3 = ….
(- 5)10 = (- 101) 2 = - 1.01 × 22
13
Représentation des réels
• Nombres à virgule flottante
Standard IEEE 754 (1985)
simple précision sur 32 bits :
1 bit de signe de la mantisse
8 bits pour l’exposant
SM E M
23 bits pour la mantisse
1bit 8 bits 23 bits
double précision sur 64 bits :
1 bit de signe de la mantisse
11 bits pour l’exposant SM E M
52 bits pour la mantisse
1bit 11 bits 52 bits
SM = 0 pour + , 1 pour -
E = codage de l’exposant par excédant càd e+127 ou e+1023
M = mantisse normalisée
14
Représentation des réels
• Nombres à virgule flottante
Norme IEEE 754 avec simple précision
Exemple :
(1000) 10 = (3E8) 16 = (1111101000) 2 = 1.111101000 × 2 9
SM = 0 car nombre positif
e = 9 doncE= e + 127 = 136 = (10001000)2
M = 111101000
0 10001000
11110100000000000000000
Exemple: Quel est le nombre A codé avec simple précision par:
A= 1 10000011 01000000000000000000000
• Données numériques
– Le BCD
– Le BCD est un code dans lequel chaque chiffre d’un nombre
décimal est codé en binaire sur 4 bits.
– Ces chiffres peuvent être représentés sur un octet individuel, c’est
le BCD non compacté.
– Exemple :
(327) 10 →(00000011 00000010 00000111) BCD
16
Autre Représentation interne de l’information
• Codage des caractères
Le code ASCII (American Standard Code for Information
Interchange) Code standard Américain pour l’échange
d’information
C'est le système de codage universel. C'est un code à 7 positions,
le huitième bit étant réservé à la parité, ce qui fait 27=128
caractères représentables. Ce code comprend :
• des fonctions de commandes (transmissions de données,
tabulations, Retour chariot ...)
• des symboles de ponctuations
• quelques symboles usuels en informatique (@...)
• les chiffres
• les majuscules , les minuscules
17
Autre Représentation interne de l’information
• Codage des caractères
18
Autre Représentation interne de l’information
• Codage des caractères
• Table des caractères imprimables
19
Autre Représentation interne de l’information
• Codage des caractères
Exemple 1: Coder en ASCII le mot INFORMATIQUE
En décimal :
• 66 111 110 106 111 117 114 32 77 111 110 115 105 101 117 114 32 33
En hexadécimal
• 42 6F 6E 6A 6F 75 72 20 4D 6F 6E 73 69 65 75 72 20 21
21