On sait que la taille de .NET de long et double est de 8 octets. Cependant, le double peut stocker un nombre de manière significative que longtemps. Comment peut-être, en considérant que double doit également stocker des données sur des chiffres après un point décimal? P>
version plus courte de la question: p>
math.pow (2, 64) == long.maxvalue
Math.pow (2, 64)
3 Réponses :
Réponse courte Double seulement stocke la figure la plus importante et non tous les chiffres qui pourraient être dans le nombre. par exemple. Si vous avez une double valeur maximale de long, il ne stockera aucune information pour les chiffres après le point décimal ou l'une quelconque de la figure juste à gauche du point Deciaml. P>
Pour tous les détails, voir Ce que chaque scientifique informatique doit connaître sur l'arithmétique de point flottant < / a> p>
Expliqué en termes simples pour que quiconque ait compris :)
J'ai initialement utilisé ce texte à propos de l'année précédente et j'ai trouvé cela vraiment utile.
Le double est le numéro de point flottant. WISCH BASSICALY MAAMS QU'IL SE QUE LE NUMÉRO STANDÉ EN TAILLE GRATURE C'EST BEAIRE COURANT ET LA PARTIE LA MOIMENT significative est rejetée. P>
Par exemple, en double lorsque vous avez un numéro de 100 milliards. Il peut s'agir exactement de 100 000 000 000 000 ou il peut être 100 000 000 000 000 000 000 000 000 001 P>
Bien que cela ne soit pas faux, il laisse la raison principale pour laquelle Double a une plus grande gamme que l'INT ou longue, à savoir qu'il s'agit d'un nombre de points flottant représenté par un signifiant et un exposant.
Les types basés entier ont des plages de nombres entiers de -2 ^ (N-1) 2 ... 2 ^ (N-1) -1 (Signé), ou 0 ... 2 ^ n-1 (non signé). p>
Les variables de point fixe sont identiques à des types basés sur les entiers, uniquement avec un facteur constant (par exemple pour 0,01: 0,01 * (0 ... 2 ^ n-1)). P>
Variables à virgule flottante (flotteur et double) Dans n'importe quelle langue, utilisez quelques bits pour l'exposant et le reste pour le nombre avant l'exposant. Ils sont moins précis (X + 1 pourraient être égaux x, X est un très grand nombre), mais j'ai une gamme beaucoup plus grande. P>
BTW, le "numéro avant l'exposant" s'appelle Mantissa ou (meilleur) signifiant, voir en.wikipedia.org / wiki / signification .
Double a moins de précision que la décimale.
en.wikipedia.org/wiki/double_Precision
en.wikipedia.org/wiki/...