Вы находитесь на странице: 1из 7

Reprsentation des

nombres entiers
Eduardo Sanchez

Ecole Polytechnique Fdrale de Lausanne

Reprsentation des nombres entiers signs


 Reprsentation 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 reprsenter des entiers entre:
-(2n-1-1) et +(2n-1-1)
Deux reprsentations sont possibles pour zro
 Exemple avec n=4:

5 = 0101 -5 = 1101 signe

magnitude
0 = 0000 = 1000

Eduardo Sanchez
Page 2 Ecole Polytechnique Fdrale de Lausanne
 Exemples d'oprations arithmtiques (avec n=4):
5 0101 rsultat faux (0):
+3 0011 dpassement de capacit
8 1000

la soustraction devrait pouvoir tre traite comme une addition:


5 - 3 = 5 + (-3)

5 0101
-3 1011 rsultat faux (0)
2 0000

Eduardo Sanchez
Page 3 Ecole Polytechnique Fdrale de Lausanne

 Reprsentation complment deux:


Le complment deux dun nombre est gal l'inverse du
nombre plus 1. Par exemple, le complment deux de 0101 est
(1010+1)=1011
 Dans ce systme, un nombre ngatif est le complment deux
du mme nombre positif. Le bit de poids fort d'un nombre
ngatif est gal 1
 Avec n bits on peut reprsenter des entiers entre:
-(2n-1) et +(2n-1-1)
n2
n1 i
x n1 x n2 ... x 0 = x n1  2 +  xi  2
i= 0

 Une seule reprsentation est possible pour zro

Eduardo Sanchez
Page 4 Ecole Polytechnique Fdrale de Lausanne
2n

+2n-1 2n-1 non sign

complment 0 0
2

-2n-1

Eduardo Sanchez
Page 5 Ecole Polytechnique Fdrale 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

complment 2
-8 -7 0 7 8

Eduardo Sanchez
Page 6 Ecole Polytechnique Fdrale de Lausanne
non sign signe- complment 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 Sanchez
Page 7 Ecole Polytechnique Fdrale de Lausanne

 Exemples d'oprations arithmtiques (avec n=4):


5 0101 rsultat faux (-8):
+3 0011 dpassement de capacit
8 1000

la soustraction peut tre traite comme une addition:


5 - 3 = 5 + (-3)

5 0101
-3 1101 rsultat correct
2 0010

Eduardo Sanchez
Page 8 Ecole Polytechnique Fdrale de Lausanne
 Les oprations d'addition et de soustraction sont simplifies en
complment deux:

A-B A+B

B = B+1

Z = A+B

Eduardo Sanchez
Page 9 Ecole Polytechnique Fdrale de Lausanne

 Traitement du dpassement de capacit pour une addition:


 si les deux oprandes sont du mme signe:
dpassement si le rsultat est du signe oppos
 si les deux oprandes sont de signe oppos:
il n'y a jamais de dpassement de capacit
 Plus formellement, pour des nombres n bits, signs en
complment 2:
overflow = cn  cn-1
 Exemple:
0111 carry
5 0101
ov = cn  cn-1= 0  1 = 1
+3 +0011
8 1000

Eduardo Sanchez
Page 10 Ecole Polytechnique Fdrale de Lausanne
 Si nous avons deux entiers signs, x et y, en format complment
2 sur n bits, leur addition prsente 3 cas:
 si x+y  2n-1, il y a un dpassement de capacit positif
 si -2n-1  x+y < 2n-1, le rsultat est correct
 si x+y < -2n-1, il y a un dpassement de capacit ngatif
 Pour n=4, les rsultats possibles de l'addition de deux nombres
signs sont illustrs par la figure suivante

Eduardo Sanchez
Page 11 Ecole Polytechnique Fdrale de Lausanne

rsultat
dpassement correct
ngatif dpassement
positif

0
6
-2 4
2
-4
0
-6
-2
-8 -4
-8
-6 -6
-4
-2
0 -8
2
4
6

Eduardo Sanchez
Page 12 Ecole Polytechnique Fdrale de Lausanne
 Extension de signe:
Si l'on veut passer un entier sign x d'un format n bits vers un
format n+k bits, en gardant la mme valeur, il suffit de faire une
extension de signe: le bit de signe est rpt sur les nouveaux k
bits de poids fort


k n

Eduardo Sanchez
Page 13 Ecole Polytechnique Fdrale de Lausanne

Вам также может понравиться