Remarque: la Nintendo 64 n'ont d'un processeur 64 bits, cependant:
De nombreux jeux ont pris l'avantage de la puce 32 bits mode de traitement la plus grande précision des données disponibles avec la version 64 bits de types de données n'est généralement pas requis par les jeux 3D, ainsi que le fait que le traitement de données 64 bits utilise deux fois plus de RAM, cache, et la bande passante, réduisant ainsi les performances globales du système.
De Webopedia:
Le terme de double précision est quelque chose de mal choisi parce que la précision n'est pas vraiment le double.
Le mot double) provient du fait qu'un nombre double précision utilise deux fois plus de bits que régulière d'un nombre à virgule flottante.
Par exemple, si un seul nombre en précision nécessite 32 bits, sa double précision homologue 64 bits.
L'extra augmenter non seulement la précision, mais aussi la gamme de grandeurs qui peuvent être représentés.
Le montant exact par lequel la précision et la gamme de grandeurs sont augmentés dépend de ce format du programme est d'utiliser pour représenter les valeurs à virgule flottante.
La plupart des ordinateurs utilisent un format standard connu comme la virgule flottante IEEE de format.
À partir de la norme IEEE pour l'arithmétique à virgule flottante
Simple Précision
La norme IEEE simple précision à virgule flottante représentation standard nécessite un 32 bits word, qui peut être représenté comme numérotés de 0 à 31, de gauche à droite.
La valeur V représentée par le mot peut être déterminé comme suit:
- Si E=255 et F est différent de zéro, alors V=NaN ("not a number")
- Si E=255 et F est égal à zéro et S est 1, alors V=-l'Infini
- Si E=255 et F est égal à zéro et S est égal à 0, alors V=Infini
- Si
0<E<255
alors V=(-1)**S * 2 ** (E-127) * (1.F)
où "1.F" est
destiné à représenter le nombre binaire créé par la préfixation de F avec une
implicite leader 1 et un binaire point.
- Si E=0 et F est différent de zéro, alors
V=(-1)**S * 2 ** (-126) * (0.F)
. Ces
sont "unnormalized" valeurs".
- Si E=0 et F est égal à zéro et S est 1, alors V=-0
- Si E=0 et F est égal à zéro et S est égal à 0, alors V=0
En particulier,
0 00000000 00000000000000000000000 = 0
1 00000000 00000000000000000000000 = -0
0 11111111 00000000000000000000000 = Infinity
1 11111111 00000000000000000000000 = -Infinity
0 11111111 00000100000000000000000 = NaN
1 11111111 00100010001001010101010 = NaN
0 10000000 00000000000000000000000 = +1 * 2**(128-127) * 1.0 = 2
0 10000001 10100000000000000000000 = +1 * 2**(129-127) * 1.101 = 6.5
1 10000001 10100000000000000000000 = -1 * 2**(129-127) * 1.101 = -6.5
0 00000001 00000000000000000000000 = +1 * 2**(1-127) * 1.0 = 2**(-126)
0 00000000 10000000000000000000000 = +1 * 2**(-126) * 0.1 = 2**(-127)
0 00000000 00000000000000000000001 = +1 * 2**(-126) *
0.00000000000000000000001 =
2**(-149) (Smallest positive value)
Double Précision
L'IEEE en virgule flottante double précision standard de représentation nécessite un 64 bits d'un mot, qui peut être représenté comme numérotées de 0 à 63, de gauche à droite.
La valeur V représentée par le mot peut être déterminé comme suit:
- Si E=2047 et F est différent de zéro, alors V=NaN ("not a number")
- Si E=2047 et F est égal à zéro et S est 1, alors V=-l'Infini
- Si E=2047 et F est égal à zéro et S est égal à 0, alors V=Infini
- Si
0<E<2047
alors V=(-1)**S * 2 ** (E-1023) * (1.F)
où "1.F" est
destiné à représenter le nombre binaire créé par la préfixation de F avec une
implicite leader 1 et un binaire point.
- Si E=0 et F est différent de zéro, alors
V=(-1)**S * 2 ** (-1022) * (0.F)
Ces
sont "unnormalized" valeurs".
- Si E=0 et F est égal à zéro et S est 1, alors V=-0
- Si E=0 et F est égal à zéro et S est égal à 0, alors V=0
Référence:
La Norme ANSI/IEEE 754-1985,
Standard pour le Binaire Arithmétique à virgule Flottante.