Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Représentation Binaire Des Nombres Relatifs

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 21

Représentation binaire des nombres relatifs

Représentation valeur absolue et Signée


• On ajoute un autre bit (à gauche) pour symboliser le signe :
- Si ce bit = 0 ⇒ Le nombre est Positif
- Si ce bit = 1 ⇒ Le nombre est négatif

• Exemple : (29) 10 = (11101) 2 ( représenté sur 5 bits)

(+29) 10 = ( 0 11101 )2 (-29)10 = ( 1 11101) 2

Le bit Les bits


Nombre Signé
signe grandeur
Représentation binaire des nombres relatifs
Valeur absolue et signée – Exemple sur 8 bits
• Limites sur 8 bits:

+ 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

• Exemple : (+29) 10 = (011101)2 ( représenté sur 6 bits)

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

• Représentation sur 4 bits des nombres positifs et négatifs


dans les ordinateurs
a3 a2 a1 a0
+7 0 1 1 1
+6 0 1 1 0
+5 0 1 0 1
+4 0 1 0 0
+3 0 0 1 1
+2 0 0 1 0
+1 0 0 0 1
0 0 0 0 0
-1 1 1 1 1
-2 1 1 1 0
-3 1 1 0 1
6
Entiers signés en binaire : résumé
• Exemple
• Codage de -57 pour les 3 méthodes, Sur 8 bits
57 = 111001
Valeur absolue +57 = (00111001) 2
Nombre signé -57 : 10111001
Complément à 1 : CR(57) = 11000110
Complément à 2 : -57 = CV(57) = 11000111
Dans tous les cas:
Si bit de poids fort = 0 : entier positif
Si bit de poids fort = 1 : entier négatif
7
Représentation octale des nombres relatifs
• Complément vrai ou complément à 8
De la même façon, en notation octale, on peut
représenter les nombres négatifs
Pour A>0 : - A = CV(A) = CR(A)+1
Où CR(A) le complément restreint de A, est obtenu en
complémentant à 7 le nombre A exprimé en octale
Exemple:
Sur 4 digits, A= (+5) 10 = (0005) 8
(-5)10 = (?)8
CR(A) = (7772)8
(-5)10 = CV(A) = CR(A)+(0001) 8 = (7773) 8

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

Soit N un nombre réel à Virgule fixe, alors


Partie entière Partie fractionnaire
N= 32 , 32

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

En simple précision, x = (-1)SM * 2 (E-127) * 1.M


En double précision, x = (-1) SM * 2 (E-1023) * 1.M

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

A= (-1) 1 x 2 131-127 x 1.01 = -1 x 2 4 x 1.25 = -20


Autre Représentation interne de l’information

• 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

Le codage sur un octet du mot INFORMATIQUE est:


01001001 01001110 01000110 01001111 01010010 01001101
01000001 01010100 01010100 01001001 01010001 01010101
01000101
20
Autre Représentation interne de l’information
• Codage des caractères
Exemple 2
Donner le codage ASCII de la chaîne de caractères ``Bonjour Monsieur !'',

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

En binaire (sur 4 Bits)


• 0100 0010 0110 1111 0110 1110 0110 1010 0110 1111 0111 0101 0111
0010 0010 0000 0100 1101 0110 1111 0110 1110 0111 0011 0110 1001
0110 0101 0111 0101 0111 0010 0010 0000 0010 0001.

21

Vous aimerez peut-être aussi