Outils pour utilisateurs

Outils du site


les_exposes:representation_des_nombres_entiers_a_virgule

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
les_exposes:representation_des_nombres_entiers_a_virgule [15/04/2016 15:24]
josso
les_exposes:representation_des_nombres_entiers_a_virgule [03/11/2016 05:25] (Version actuelle)
vessechy [La représentation des nombres à virgule]
Ligne 1: Ligne 1:
-=======Représenter des nombres entiers et à virgule=======+VESSECHY Peter 
 + 
 +==========Représenter des nombres entiers et à virgule==========
  
 Les ordinateurs ne manipulent que des objets simples : des 0 et des 1. 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. 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.
  
 On appelle représentation (ou codification) d'un nombre la façon selon laquelle il est décrit sous forme binaire. ​ On appelle représentation (ou codification) d'un nombre la façon selon laquelle il est décrit sous forme binaire. ​
 +
 La représentation des nombres sur un ordinateur est indispensable pour que celui-ci puisse les stocker, les manipuler. ​ La représentation des nombres sur un ordinateur est indispensable pour que celui-ci puisse les stocker, les manipuler. ​
 +
 Toutefois le problème est qu'un nombre mathématique peut être infini (aussi grand que l'on veut), mais la représentation d'un nombre dans un ordinateur doit être faite sur un nombre de bits prédéfini. Il s'agit donc de prédéfinir un nombre de bits et la manière de les utiliser pour que ceux-ci servent le plus efficacement possible à représenter l'​entité. Toutefois le problème est qu'un nombre mathématique peut être infini (aussi grand que l'on veut), mais la représentation d'un nombre dans un ordinateur doit être faite sur un nombre de bits prédéfini. Il s'agit donc de prédéfinir un nombre de bits et la manière de les utiliser pour que ceux-ci servent le plus efficacement possible à représenter l'​entité.
  
Ligne 26: Ligne 31:
 =====La représentation des entiers relatifs===== =====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. ​+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 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 = -(2<​sup>​15</​sup>​ - 1) = -32767 à 111 1111 1111 1111 = 2<​sup>​15</​sup>​ - 1 = 32 767. 1 bit pour le signe et 15 bits pour la valeur absolue, on pourrait représenter les entiers relatifs de -111 1111 1111 1111 = -(2<​sup>​15</​sup>​ - 1) = -32767 à 111 1111 1111 1111 = 2<​sup>​15</​sup>​ - 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. ​ 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 +2<​sup>​16</​sup>​ = x + 65 536, qui est compris entre 32 768 et 65 535. 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 +2<​sup>​16</​sup>​ = 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. 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.  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 Cette manière de représenter les entiers relatifs s’appelle la notation en
 complément à deux. complément à deux.
-Avec des mots de seize bits, on écrit les entiers relatifs compris entre -2<​sup>​15</​sup>​ = -32768 et 2<​sup>​15</​sup>​ - 1 = 32 767. Plus généralement,​ avec des mots de n bits, on écrit les entiers relatifs compris entre -2<​sup>​n-1</​sup>​ et 2<​sup>​n-1</​sup>​-1: ​+ 
 +Avec des mots de seize bits, on écrit les entiers relatifs compris entre -2<​sup>​15</​sup>​ = -32768 et 2<​sup>​15</​sup>​ - 1 = 32 767.  
 + 
 +Plus généralement,​ avec des mots de n bits, on écrit les entiers relatifs compris entre -2<​sup>​n-1</​sup>​ et 2<​sup>​n-1</​sup>​-1: ​
  
 • Un entier relatif x positif ou nul compris entre 0 et 2<​sup>​n-1</​sup>​-1 est représenté par l’entier naturel x compris entre 0 et 2<​sup>​n-1</​sup>​-1;​ • Un entier relatif x positif ou nul compris entre 0 et 2<​sup>​n-1</​sup>​-1 est représenté par l’entier naturel x compris entre 0 et 2<​sup>​n-1</​sup>​-1;​
Ligne 45: Ligne 57:
 =====La représentation des nombres à virgule===== =====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. +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 constante 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 base dix.  
 + 
 +Un nombre est représenté sous la forme sm2<​sup>​n</​sup>​ 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 alors que pour un mot de 32 bits on utilise 1 bit pour le signe, 8 bits pour l'​exposant et 23 bits pour la mantisse. Le nombre de bit définit le format et la précision du mot. Par exemple ​ un mot de 32 bits sera un format de simple précision et un mot de 64 bits sera un format de double précision. 
 + 
 +La précision dépends de la valeur de l'​exposant,​ si l'on augmente la valeur de l'​exposant on étend le rang de nombres couverts cependant le nombre de valeur représentable reste le même cela diminue donc la précision. La seule manière d'​augmenter la précision et le rang est d'​augmenter le nombre de bits utilisé. 
 + 
 +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
  
-De même, en binaire, les chiffres à droite de la virgule représentent ​des demisdes quarts, des huitièmes, des seizièmes, etc. On peut ainsi représenter,​ par exemple, le nombre un et un quart :  +Les deux entiers naturels 0 et 2 047 sont réservés pour des situations exceptionnelles (+∞ -∞ , etc.)
-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 constante 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 base dix. Un nombre est représenté sous +La mantisse ​m est un nombre ​binaire ​à virgule compris entre 1 inclus et 2 exclu, comprenant 52 chiffres après la virgule
-la forme sm2<​sup>​n</​sup>​ où s est le signe du nombre, n son exposant et sa mantisse. Le signe est + ou -, l’exposant est un entier relatif et la mantisse ​est un nombre à virgulecompris 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é  +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.
-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.1460726670.txt.gz · Dernière modification: 15/04/2016 15:24 par josso