Вы находитесь на странице: 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

0 = 0000 = 1000

Page 2

Eduardo Sanchez
Ecole Polytechnique Fdrale de Lausanne

signe
magnitude

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


5
+3
8

0101
0011
1000

rsultat faux (0):


dpassement de capacit

la soustraction devrait pouvoir tre traite comme une addition:


5 - 3 = 5 + (-3)

5
-3
2

Page 3

0101
1011
0000

rsultat faux (0)

Eduardo Sanchez
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)

x n1 x n2 ... x 0 = x n1  2

n1

n2

+  xi  2
i= 0

 Une seule reprsentation est possible pour zro

Page 4

Eduardo Sanchez
Ecole Polytechnique Fdrale de Lausanne

2n

2n-1

+2n-1

complment
2

non sign

-2n-1

Eduardo Sanchez
Ecole Polytechnique Fdrale de Lausanne

Page 5

 Exemple avec n=4:


5 = 0101
3 = 0011
8 = impossible

-5 = 1011
-3 = 1101
-8 = 1000

signe

0 = 0000
 Si n=4:
signe-magnitude
-8 -7

-8 -7

complment 2

Page 6

Eduardo Sanchez
Ecole Polytechnique Fdrale de Lausanne

non sign

signemagnitude

complment 2

0000

0001

0010

0011

0100

0101

0110

0111

1000

-8

1001

-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
Ecole Polytechnique Fdrale de Lausanne

Page 7

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


5
+3
8

0101
0011
1000

rsultat faux (-8):


dpassement de capacit

la soustraction peut tre traite comme une addition:


5 - 3 = 5 + (-3)

5
-3
2

Page 8

0101
1101
0010

rsultat correct

Eduardo Sanchez
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
Ecole Polytechnique Fdrale de Lausanne

Page 9

 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:
5
+3
8

Page 10

0111 carry
0101
+0011
1000

ov = cn  cn-1= 0  1 = 1

Eduardo Sanchez
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
Ecole Polytechnique Fdrale de Lausanne

Page 11

rsultat
correct

dpassement
ngatif

dpassement
positif

8
6
4
2
0

-2

4
2

-4
0
-6

-2

-8

-4
-8

Page 12

-6

-4

-2

-6
0

-8
6

Eduardo Sanchez
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
n

Page 13

Eduardo Sanchez
Ecole Polytechnique Fdrale de Lausanne

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