3.entiers

197 vues

Publié le

0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
197
Sur SlideShare
0
Issues des intégrations
0
Intégrations
3
Actions
Partages
0
Téléchargements
3
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

3.entiers

  1. 1. Représentation des nombres entiers Eduardo Sanchez Ecole Polytechnique Fédérale de LausanneReprésentation des nombres entiers signés Représentation signe-magnitude: Le bit de poids fort indique le signe (0 si positif) et les bits restants la valeur du nombre. Avec n bits on peut représenter des entiers entre: -(2n-1-1) et +(2n-1-1) Deux représentations sont possibles pour zéro Exemple avec n=4: 5 = 0101 -5 = 1101 signe magnitude 0 = 0000 = 1000 Eduardo SanchezPage 2 Ecole Polytechnique Fédérale de Lausanne
  2. 2. Exemples dopérations arithmétiques (avec n=4): 5 0101 résultat faux (0): +3 0011 dépassement de capacité 8 1000 la soustraction devrait pouvoir être traitée comme une addition: 5 - 3 = 5 + (-3) 5 0101 -3 1011 résultat faux (0) 2 0000 Eduardo SanchezPage 3 Ecole Polytechnique Fédérale de Lausanne Représentation complément à deux: Le complément à deux d’un nombre est égal à linverse du nombre plus 1. Par exemple, le complément à deux de 0101 est (1010+1)=1011 Dans ce système, un nombre négatif est le complément à deux du même nombre positif. Le bit de poids fort dun nombre négatif est égal à 1 Avec n bits on peut représenter des entiers entre: -(2n-1) et +(2n-1-1) n 2 n 1 i x x n 1 n 2 ... x 0 = x n 1 2 + x 2 i i= 0 Une seule représentation est possible pour zéro Eduardo SanchezPage 4 Ecole Polytechnique Fédérale de Lausanne
  3. 3. 2n +2n-1 2n-1 non signé complément 0 0 à2 -2n-1 Eduardo SanchezPage 5 Ecole Polytechnique Fédérale de Lausanne Exemple avec n=4: 5 = 0101 -5 = 1011 3 = 0011 -3 = 1101 signe 8 = impossible -8 = 1000 0 = 0000 Si n=4: signe-magnitude -8 -7 0 7 8 complément à 2 -8 -7 0 7 8 Eduardo SanchezPage 6 Ecole Polytechnique Fédérale de Lausanne
  4. 4. non signé signe- complément à 2 magnitude 0000 0 0 0 0001 1 1 1 0010 2 2 2 0011 3 3 3 0100 4 4 4 0101 5 5 5 0110 6 6 6 0111 7 7 7 1000 8 0 -8 1001 9 -1 -7 1010 10 -2 -6 1011 11 -3 -5 1100 12 -4 -4 1101 13 -5 -3 1110 14 -6 -2 1111 15 -7 -1 Eduardo SanchezPage 7 Ecole Polytechnique Fédérale de Lausanne Exemples dopérations arithmétiques (avec n=4): 5 0101 résultat faux (-8): +3 0011 dépassement de capacité 8 1000 la soustraction peut être traitée comme une addition: 5 - 3 = 5 + (-3) 5 0101 -3 1101 résultat correct 2 0010 Eduardo SanchezPage 8 Ecole Polytechnique Fédérale de Lausanne
  5. 5. Les opérations daddition et de soustraction sont simplifiées en complément à deux: A-B A+B B = B+1 Z = A+B Eduardo SanchezPage 9 Ecole Polytechnique Fédérale de Lausanne Traitement du dépassement de capacité pour une addition: • si les deux opérandes sont du même signe: dépassement si le résultat est du signe opposé • si les deux opérandes sont de signe opposé: il ny a jamais de dépassement de capacité Plus formellement, pour des nombres n bits, signés en complément à 2: overflow = cn cn-1 Exemple: 0111 carry 5 0101 ov = cn cn-1= 0 1=1 +3 +0011 8 1000 Eduardo SanchezPage 10 Ecole Polytechnique Fédérale de Lausanne
  6. 6. Si nous avons deux entiers signés, x et y, en format complément à 2 sur n bits, leur addition présente 3 cas: • si x+y 2n-1, il y a un dépassement de capacité positif • si -2n-1 x+y < 2n-1, le résultat est correct • si x+y < -2n-1, il y a un dépassement de capacité négatif Pour n=4, les résultats possibles de laddition de deux nombres signés sont illustrés par la figure suivante Eduardo SanchezPage 11 Ecole Polytechnique Fédérale de Lausanne résultat dépassement correct négatif dépassement positif 8 6 4 2 0 6 -2 4 2 -4 0 -6 -2 -8 -4 -8 -6 -6 -4 -2 0 -8 2 4 6 Eduardo SanchezPage 12 Ecole Polytechnique Fédérale de Lausanne
  7. 7. Extension de signe: Si lon veut passer un entier signé x dun format n bits vers un format n+k bits, en gardant la même valeur, il suffit de faire une extension de signe: le bit de signe est répété sur les nouveaux k bits de poids fort n … … … … … k n Eduardo SanchezPage 13 Ecole Polytechnique Fédérale de Lausanne

×