通信用語の基礎知識 IPv4
戻る
参加者募集中

NaN

辞書:科学用語の基礎知識 算数・数学編 (NMATH)
読み:エンエイエン
読み:ナン
外語:NaN: Not a Number 英語
品詞:名詞
2003/04/05 作成
2012/04/17 更新

非数値、非数。演算結果が数値で表わせないときに使われる特殊な値のこと。

浮動小数点演算は、整数演算と異なり様々な演算条件があり、その演算結果が数値で表わせない状況が生じうる。このような場合、NaNが返される。

NaNが返る例として、0×∞や、0÷0、∞÷∞のようなものがある。

内部表現方法

IEEE 754では、次のように数値を表わす。

(−1)s × m × be

それぞれに数ビットずつ割り当てて、32ビット長あるいは64ビット長などの一定の長さにして内部で演算をしている。

この時、eが全ビットが1で、mの最上位ビットを除いた値が1以上の時、NaNであると定義されている。この場合でもsが有効なため、NaNには+NaNと−NaNが存在する。

更に、NaNにはQuiet NaNとSignaling NaNがあり、mの最上位ビットが0ならSignaling ±NaN、1ならQuiet ±NaN、である。いずれの場合も、mの余剰ビットを用いて情報の伝達をすることが可能となっている。

NaNに対する演算

この値に対する全ての演算は無効である。数値演算を行なったときはNaNが、比較演算を行なったときはfalse(偽、不一致)が得られる。

NaN同士の比較演算もfalse(偽、不一致)が得られる。NaNは特定の値を表わすものではないため、NaN同士の比較自体意味を持たない。

従って、単純な比較演算で値がNaNかどうかを判断することはできず、ビット列の解読が必要である。そこで、プログラミング言語によってはisNaNなどの判断用関数が用意されていることがある。

関連する用語
浮動小数点
IEEE 754
false

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.03 (16-May-2019)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club