結果が明らかに間違っている場合でも処理が継続されることを、疑問に思われるかもしれません。IEEE の算術演算では、NaN や Inf など、どの種別の間違った答えを無視できるかをユーザーが指定できます。そして、そのような区別に基づいて決定が行われます。
たとえば、回路シミュレーションを想定してみましょう。特有の 50 行の演算の中で、引数の目的となる重要な変数は電圧量だけであり、この変数のとり得る値は +5v、0、-5v だけであると仮定します。
途中の演算結果が正当な範囲にくるように、演算の各部分を詳細に調整できます。
計算された値が 4.0 よりも大きい場合は、5.0 を返します。
計算された値が -4.0 以上 +4.0 以下の場合は、0 を返します。
計算された値が -4.0 よりも小さい場合は、-5.0 を返します。
さらに、Inf は許可されない値であるので、大きな数を乗算しないような特別なロジックが必要です。
IEEE 算術演算ではロジックはかなり単純にできます。演算を明確な形式で記述し、最終結果を正しい値に導くだけでかまいません。 なぜなら、Inf の発生する可能性があり、それは簡単にテストできるからです。
さらに、0/0 の特殊なケースも検出でき、ユーザーの望む形で処理できます。不必要な比較を行わなくてもすむため、結果は読みやすく、実行も高速です。