Outils pour utilisateurs

Outils du site


les_exposes:representation_des_nombres_entiers_a_virgule

Ceci est une ancienne révision du document !


JOSSO

Représenter des nombres entiers et à virgule

Les ordinateurs ne manipulent que des objets simples : des 0 et des 1. Mémoriser, transmettre et transformer des nombres, des textes, des images ou des sons demande donc d’abord de les représenter comme des suites de 0 et de 1.

La mémoire des ordinateurs est constituée d’une multitude de petits circuits électroniques qui ne peuvent être, chacun, que dans deux états. Comme il fallait donner un nom à ces états, on a décidé de les appeler 0 et 1, mais on aurait pu tout aussi bien les appeler A et B ou faux et vrai. Une telle valeur, 0 ou 1, s’appelle un booléen, un chiffre binaire ou encore un bit . Un tel circuit à deux états s’appelle un circuit mémoire un bit et se décrit donc par le symbole 0 ou par le symbole 1.


La représentation des entiers relatifs

Pour représenter les entiers relatifs en notation binaire, on doit étendre la représentation aux nombres négatifs. Une solution est de réserver un bit pour le signe de l’entier à représenter et d’utiliser les autres pour représenter sa valeur absolue. Ainsi, avec des mots de 16 bits, en utilisant 1 bit pour le signe et 15 bits pour la valeur absolue, on pourrait représenter les entiers relatifs de -111 1111 1111 1111 = -(215-1) = -32767à 111 1111 1111 1111 = 215- 1 = 32 767.

Cependant, cette méthode a plusieurs inconvénients, l’un d’eux étant qu’il y a deux zéros, l’un positif et l’autre négatif. On a donc préféré une autre méthode, qui consiste à représenter un entier relatif par un entier naturel. Si on utilise des mots de 16 bits, on peut représenter les entiers relatifs compris entre -32 768 et 32 767 : on représente un entier relatif x positif ou nul comme l’entier naturel x, et un entier relatif x strictement négatif comme l’entier naturel x +216 = x + 65 536, qui est compris entre 32 768 et 65 535.

Ainsi, les entiers naturels de 0 à 32 767 servent à représenter les entiers relatifs positifs ou nuls, et les entiers naturels de 32 768 à 65 535 décrivent les entiers relatifs strictement négatifs. L’entier relatif -1 est représenté comme l’entier naturel 65 535, c’est-à- dire par le mot 1111 1111 1111 1111. Cette manière de représenter les entiers relatifs s’appelle la notation en complément à deux. Avec des mots de seize bits, on écrit les entiers relatifs compris entre -215 = -32768 et 215 - 1 = 32 767. Plus généralement, avec des mots de n bits, on écrit les entiers relatifs compris entre -2n-1 et 2n-1-1:

• Un entier relatif x positif ou nul compris entre 0 et 2n-1-1 est représenté par l’entier naturel x compris entre 0 et 2n-1-1;

• Un entier relatif x strictement négatif compris entre – 2n-1 et – 1 est représenté par l’entier naturel x+2n compris entre 2n-1 et 2n-1.


La représentation des nombres à virgule

Comme la notation décimale, la notation binaire permet aussi de représenter des nombres à virgule. En notation décimale, les chiffres à gauche de la virgule représentent des unités, des dizaines, des centaines, etc. et ceux à droite de la virgule, des dixièmes, des centièmes, des millièmes, etc.

De même, en binaire, les chiffres à droite de la virgule représentent des demis, des quarts, des huitièmes, des seizièmes, etc. On peut ainsi représenter, par exemple, le nombre un et un quart : 1.01. Toutefois, cette manière de faire ne permet pas de représenter des nombres très grands ou très petits comme le nombre d’Avogadro ou la constant e de Planck.

On utilise donc une autre représentation similaire à la « notation scientifique » des calculatrices, sauf qu’elle est en base deux et non en ba se dix. Un nombre est représenté sous la forme sm2n où s est le signe du nombre, n son exposant et m sa mantisse. Le signe est + ou -, l’exposant est un entier relatif et la mantisse est un nombre à virgule, compris entre 1 inclus et 2 exclu.

Par exemple, quand on utilise 64 bits pour représenter un nombre à virgule, on utilise 1 bit pour le signe, 11 bits pour l’exposant et 52 bits pour la mantisse. Le signe + est représenté par 0 et le signe - par 1. L’exposant n est un entier relatif compris entre -1 022 et 1 023 ; on le représente comme l’entier naturel n + 1 023, qui est compris entre 1 et 2 046. Les deux entiers naturels 0 et 2 047 sont réservés pour des situations exceptionnelles (+∞ , -∞ , etc.). La mantisse m est un nombre binaire à virgule compris entre 1 inclus et 2 exclu, comprenant 52 chiffres après la virgule. Comme cette mantisse est comprise entre 1 et 2, elle a toujours un seul chiffre avant la virgule et ce chiffre est toujours un 1 ; il est donc inutile de le représenter et on utilise les 52 bits pour représenter les 52 chiffres après la virgule.

les_exposes/representation_des_nombres_entiers_a_virgule.1449741139.txt.gz · Dernière modification: 10/12/2015 10:52 par garnier