Soupassement arithmétique

Le terme soupassement arithmétique, soupassement en virgule flottante, soupassement de capacité ou tout simplement soupassement est un néologisme qui s'inspire du mot dépassement. Le terme et sa définition (« obtention d'un résultat non nul inférieur à la plus petite valeur non nulle susceptible d'être représentée ») sont normalisés par l'ISO/CÉI 2382-2:1976 et 2382-22:1986. Le soupassement est aussi appelé « dépassement par valeurs inférieures, dépassement de capacité par valeurs inférieures » et est parfois connu sous le nom anglais arithmetic underflow.

Un soupassement se produit dans un programme informatique quand la valeur d'un calcul en virgule flottante est plus petite en valeur absolue que le plus petit nombre en virgule flottante représentable de façon normalisée dans le type de données du résultat. En d'autres termes, le résultat est plus proche de zéro que n'importe quelle valeur de ce type de données.

Le soupassement peut être vu comme un dépassement de la plus petite valeur négative de l'exposant du nombre en virgule flottante. Par exemple, si l'exposant peut prendre des valeurs de −128 à 127, un résultat plus petit en valeur absolue que 2−128 provoquera un soupassement.

Le résultat peut être considéré comme la valeur zéro par arrondi. Le calcul peut aussi provoquer une exception qui pourra être interceptée.

Voir aussi modifier

Articles connexes modifier