Valeur maximale contre la taille de long et double .NET
Il est connu que dans la .NET taille à la fois long et double est de 8 octets. Cependant, la double peut stocker nombre nettement plus important que long. Comment peut-il être, considérant que double a également besoin de stocker des données sur des chiffres après le point décimal?
Version plus courte de la question:
Mathématiques.Pow(2, 64) == long.MaxValue
Les mathématiques.Pow(2, 64) < double.MaxValue
double a moins de précision que décimal.
en.wikipedia.org/wiki/Double_precision
en.wikipedia.org/wiki/...
en.wikipedia.org/wiki/Double_precision
en.wikipedia.org/wiki/...
OriginalL'auteur Konstantin | 2009-10-17
Vous devez vous connecter pour publier un commentaire.
Réponse courte double seulement les magasins de la figure la plus significative, et pas de tous les chiffres qui pourraient être dans le nombre. par exemple, si vous avez un double > valeur max de temps il ne sera pas stocker toutes les informations pour les chiffres après la virgule ou l'un quelconque de la figure, juste à gauche de la deciaml point.
Pour tous les détails voir Ce que tout informaticien devez savoir à propos de l'Arithmétique à virgule Flottante
J'ai d'abord utilisé ce texte à propos de l'année dernière et l'a trouvé très utile.
OriginalL'auteur Mark
Entier en fonction des types de nombre entier varie de -2^(n-1)2 ... 2^(n-1)-1 (signé),
ou 0 ... 2^n-1 (non signé).
Point fixe les variables sont les mêmes que le nombre entier en fonction des types, seulement avec un facteur constant (par exemple de 0,01: 0.01*(0...2^n-1)).
Variables à virgule flottante (float et double) dans n'importe quelle langue utiliser un peu de bits pour l'exposant et le reste pour le nombre avant l'exposant. Ils sont moins précis (x+1, l'égalité de x, x est un nombre très grand), mais ont une plus grande portée.
OriginalL'auteur Danny Varod
double est nombre à virgule flottante. Quelle bassicaly meams que comme le nombre stockées en double est plus grand c'est être rouned, et le moins significiant partie est rejetée.
Par exemple en double lorsque vous avez un nombre de 100 milliards de dollars.
Il pourrait être exactement 100 000 000 000 ou il peut être 100 000 000 000,000 000 000 000 000 001
OriginalL'auteur Michał Piaskowski