浮動小数の世界

PHPの世界続き。「PHPで149999999999を四捨五入したらどうなるか?」

…などという話は実はメインではなく(リンク先のトラックバック元でも言われているが)、IEEE 754の64ビット倍精度浮動小数(いわゆるdouble)で

  1. 正確に表現できる最大の整数はいくつか
  2. 正確に表現できる最小の整数はいくつか
  3. 正確に表現できない最小の正整数はいくつか
  4. 正確に表現できない最大の負整数はいくつか

等が真のクイズ。カンニング(検索)は禁止。

追記:条件がきつすぎたので緩和。あと、つまらない問題は削除。ちなみに、doubleの指数部は11ビット、仮数部は52ビットです(あとの1ビットは符号部)。検索の手間を省略するために一応。

追記2:ShiroさんのWikiページの(2007/06/05 22:11:01 PDT 浮動小数点数)を参照。