NaN(Not-A-Number;非数)やInf(無限大)などの特殊な値には以下の4種類がある.
クラス(種類) | 符号部 | 指数部 | 仮数部 | 個数 | |
---|---|---|---|---|---|
非数 | NaN | * | 11..1 | ≠00..0 | たくさん存在する |
無限大 | Inf | * | 11..1 | 00..0 | +Infと-Infの2種類が存在する |
非正規化数 | Denormal | * | 00..0 | ≠00..0 | たくさん存在する |
ゼロ | Zero | * | 00..0 | 00..0 | +0と-0の2種類が存在する |
以下,それぞれの特殊な値について詳細を説明する. […と いいたいところだけど,まだ書けてないです.]
指数部がオール1で仮数部が0でない. 符合は+/-どちらでもよい.
NaNには,Signaling NaN(SNaN)とQuiet NaN(QNaN)の2種類がある.
指数部がオール1で仮数部が0. 符合が+のときは+Inf,-のときは-Inf.
指数部がオール0で仮数部が0でない.数値は精度が落ちるけども有効と考えられ,次の値となる.
単精度 | (-1)s×0.f×2-126 |
倍精度 | (-1)s×0.f×2-1022 |
指数部がオール0で,仮数部も0. 符合はどちらでもよく,+のときは+0,-のときは-0となる.