1 Annexe A: Numérotation binaire A.1 Nombres en précision finie A.2 Représentation des nombres...

Post on 04-Apr-2015

105 views 1 download

Transcript of 1 Annexe A: Numérotation binaire A.1 Nombres en précision finie A.2 Représentation des nombres...

1

Annexe A: Numérotation binaire

A.1 Nombres en précision finie

A.2 Représentation des nombres

A.3 Conversion d’une base à une autre

A.4 Nombres binaires négatifs

A.5 Arithmétique binaire

B.1 Principes des nombres en virgules flottantes

Architecture des ordinateurs Béat Hirsbrunner S2 - 25 octobre 2006

2

A.1 Nombres en précision finie• Les ordinateurs utilisent une autre arithmétique que les humains

• Les physiciens disent: Il y a 10 puissance 78 électrons dans l’univers…• Les chimistes disent : …• Les philosophes disent : …• Les mathématiciens disent : …• Les reporters sportifs disent : …• Les ordinateurs disent : j’aime les 0 et 1 et je préfère travailler avec des

nombres contenant un nombre fini de chiffres (8 bits, 16 bits, …)

• Exemple: Ensemble des entiers positifs avec 3 chiffres décimaux• L’ensemble comprend exactement 100 éléments: 000, 001, …, 999• Certains nombres ne peuvent pas être représentés:

Les nombres supérieurs à 999 Les nombres négatifs …

• L’arithmétique n’est pas fermée (au regard des opérations +, - *): 600 + 600 = 1200 (trop grand) 003 - 005 = -2 (négatif) …

• L’algèbre des nombres en précision finie est différente de l’algèbre normale: a + (b - c) = (a + b) - c

(avec a=700, b=400, c=300: a+b est trop grand, mais pas a+(b-c))

3

A.2 Représentation des nombres (1/3)

• Base naturelle pour les humains : 10• Base naturelle pour les ordinateurs d’aujourd’hui: 2, 8, 16, …:

01012345670123456789ABCDEF…

4

A.2 Représentation des nombres (2/3)

5

A.2 Représentation des nombres (3/3)

6

A.3 Conversion d’une base à une autre (1/2)

7

A.3 Conversion d’une base à une autre (2/2)

8

A.4 Nombres binaires négatifs (1/5)

1. Valeur signée (Signed Magnitude)• Le premier bit représente le signe (0=positif, 1=négatif)

2. Complément à un (one’s complement)• Le premier bit représente le signe (0=positif, 1=négatif)• Tous les 1 sont remplacés par des 0 et tous les 0 par des 1

3. Complément à deux (two’s complement)• Le premier bit représente le signe (0=positif, 1=négatif)• Tous les 1 sont remplacés par des 0 et tous les 0 par des 1• Puis on rajoute 1 au résultat

4. Excédent 2m-1 (excess 2m-1)1. On additionne 2m-1 aux nombres à m bits

Remarques1. (1) et (2) ont deux représentations différentes pour le zéro !2. (3) et (4) n’ont pas le même nombre de chiffres positifs et négatifs !3. (3) et (4) ne se différencient que sur le premier bit !4. Pour toutes les représentations, le signe est encodé dans le premier bit !

9

A.4 Nombres binaires négatifs (2/5)

Valeur signée

0 1 2 3

000 100001 101 110 111010 011

-0 -1 -2 -3

Complément à un

0 1 2 3

000 100001 101 110 111010 011

-3 -2 -1 -0

10

A.4 Nombres binaires négatifs (3/5)

0

1

2

3

Complément à 2

000

100

001

101

110

111

010

011-4

-1

-2

-3

11

A.4 Nombres binaires négatifs (4/5)

-4

-3

-2

-1

Codage par excédent 2m-1

000

100

001

101

110

111

010

0110

3

2

1

12

A.4 Nombres binaires négatifs (5/5)

13

A.5 Arithmétique binaire

14

A.5 Arithmétique binaire

15

B.1 Principes

• Notation scientifique: n = m * 10e, avec m = mantisse et e = exposant

• Virgule flottante: 0 ≤ |m| < 1, par exemple 2002 s’écrit 0,2002 * 104