138
Le logiciel R - Maˆ ıtriser le langage
mais que la r´ eciproque est fausse. Par cons´ equent, une perte d’information
est toujours possible lors du passage d’une repr´ esentation ` a une autre. Par
ailleurs, les fractions dyadiques d´ ecimales ont le mˆ eme nombre de chiffres
que leurs ´ equivalents binaires, alors que les valeurs d´ ecimales qui ne sont
pas dyadiques ont des ´ equivalents binaires infinis.
L’ordinateur est une machine con¸ cue pour travailler avec des nombres binaires car les deux chiffres 0 et 1 s’y traduisent facilement par l’absence ou
par le passage d’un courant ´ electrique. Puisque les repr´ esentations `
a virgule
fixe sont souvent tr` es dispendieuses en nombres de bits (le bit, binary digit en
anglais, est un chiffre binaire, c’est-` a-dire 0 ou 1), l’ordinateur fonctionne en g´ en´ eral avec des repr´ esentations dites ` a virgule flottante. Celles-ci sont pr´ esent´ ees
dans la sous-section suivante.
3.9.2 Repr´ esentation ` a virgule flottante
3.9.2.1 D´ efinitions
Ayant fix´ e une base b (ex. : b = 2 pour le syst` eme binaire ou b = 10 pour le
syst` eme d´ ecimal pour ne citer que les plus classiques), tout nombre r´ eel x ∈ R,
peut ˆ etre ´ ecrit sous la forme :
x = (−1)
s mb
e
o` u
– s est appel´ e le bit de signe (de x), et vaut 0 ou 1 ;
– m est appel´ e la mantisse et peut s’´ ecrire m = m 1 .m 2 m 3 · · · m ∞ o` u chaque
m i ∈ {0, 1, . . . , b − 1} est appel´ e un digit (et o` u le premier « . » apr` es m 1
symbolise le s´ eparateur d´ ecimal, commun´ ement appel´ e la « virgule » en
fran¸ cais) ;
– e ∈ Z est appel´ e l’exposant.
Cette ´ ecriture est dite repr´ esentation ` a virgule flottante de x dans la base b.
L’entier m 1 est la partie enti` ere de la mantisse, le reste des chiffres (digits),
` a savoir m 2 · · · m ∞ est la partie fractionnaire de la mantisse. Notons qu’il faut
imposer une contrainte de non-nullit´ e du premier chiffre (m 1 0) afin d’assurer
l’unicit´ e de la repr´ esentation. Bien sˆ ur, cette contrainte ne peut pas s’appliquer
pour le cas particulier du z´ ero.
Donnons un premier exemple. Dans un syst` eme d´ ecimal, on peut ´ ecrire le
nombre −0.6345 sous une repr´ esentation ` a virgule flottante en prenant s = 1,
m 1 = 6, m 2 = 3, m 3 = 4, m 4 = 5, m i = 0, ∀i > 4, b = 10 et e = −1 :
−0.6345 = (−1)
1 6.345 × 10
−1
.
Précédent

- 172/701

Suivant