IEEE 754 est la norme à virgule flottante la plus courante et la plus utilisée, notamment les formats binaire simple précision32 aka float et double précision binary64 aka double formats.
Il est bien connu que les NaN se propagent en arithmétique, mais je n'ai trouvé aucune démonstration, j'ai donc écrit un petit test: #include <limits> #include <cstdio> int main(int argc, char* argv[]) { float qNaN = std::numeric_limits<float>::quiet_NaN(); float neg = -qNaN; float sub1 = 6.0f - qNaN; float sub2 = …
Pourquoi les comparaisons des valeurs de NaN se comportent-elles différemment de toutes les autres valeurs? Autrement dit, toutes les comparaisons avec les opérateurs ==, <=,> =, <,> où une ou les deux valeurs sont NaN renvoie false, contrairement au comportement de toutes les autres valeurs. Je suppose que cela simplifie …
Le type de données flottant est un point flottant IEEE 754 32 bits simple précision et le type de données double est un point flottant IEEE 754 64 bits double précision. Qu'est-ce que ça veut dire? Et quand dois-je utiliser float au lieu de double ou vice-versa?
Pour plus de clarté, si j'utilise un langage qui implémente les flottants IEE 754 et que je déclare: float f0 = 0.f; float f1 = 1.f; ... puis réimprimez-les, j'obtiendrai 0,0000 et 1,0000 - exactement. Mais IEEE 754 n'est pas capable de représenter tous les nombres le long de la …
Je sais que la plupart des décimales n'ont pas de représentation en virgule flottante exacte (les mathématiques en virgule flottante sont-elles cassées? ). Mais je ne vois pas pourquoi 4*0.1est bien imprimé comme 0.4, mais 3*0.1ne l'est pas, alors que les deux valeurs ont en fait des représentations décimales laides: …
Non, ce n'est pas une autre question "Pourquoi est (1 / 3.0) * 3! = 1" . J'ai beaucoup lu sur les virgules flottantes ces derniers temps; plus précisément, comment le même calcul peut donner des résultats différents sur différentes architectures ou paramètres d'optimisation. C'est un problème pour les jeux …
Est-il possible d'obtenir une division par 0 (ou l'infini) dans l'exemple suivant? public double calculation(double a, double b) { if (a == b) { return 0; } else { return 2 / (a - b); } } Dans des cas normaux, ce ne sera évidemment pas le cas. Mais que …
PHP est célèbre pour son jonglage de types. Je dois admettre que cela me laisse perplexe, et j'ai du mal à trouver des éléments logiques / fondamentaux de base dans les comparaisons. Par exemple: si $a > $best vrai et $b > $cest vrai, cela signifie-t-il que $a > $cc'est …
J'ai lu sur la virgule flottante et je comprends que NaN pourrait résulter des opérations. Mais je ne peux pas comprendre exactement ce que sont ces concepts. Quelle est la différence entre eux? Lequel peut être produit lors de la programmation C ++? En tant que programmeur, pourrais-je écrire un …
En JavaScript, la valeur NaN peut être représentée par une large gamme de doubles 64 bits en interne. Plus précisément, tout double avec la représentation au niveau du bit suivante: x111 1111 1111 xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx Est interprété comme un …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.