平成18年 秋期 基本情報技術者 午前 問4

次の24ビットの浮動小数点形式で表現できる最大値を表すビット列を、16進数として表したものはどれか。
ここで、この形式で表現される値は(-1)S×16E-64×0.Mである。

 ア  3FFFFF  イ  7FFFFF  ウ  BFFFFF  エ  FFFFFF


答え イ


解説
まず、符号(S)の値について考える。
Sに関係するのは(-1)S なのでSが0と1の時のこの式の値を考える。
0の時は-1の0乗なので1になり、1の時は-1の1乗なので-1になる。求める数は最大値なので、正の数を表すS=0になる。

次に指数部(E)について考える。
Eに関係するのは 16E-64 なのでEが大きければ大きいほど大きな数字になることがわかるから、E=1111111b(127)になる。

ここでSとEから求める数は7Fxxxxであることがわかるので、答えはイになる。
ちなみに答えの7FFFFFは、MがFFFFh=65535なので、1663×0.65535になります。(大きすぎて読み方がわかりません。)

コンピュータにはほかに固定小数点という形式もありますが、考え方が普段使用している形式なので簡単にわかると思います。
浮動小数点と固定小数点では浮動小数点の方が計算に時間がかかるという特徴があります。


キーワード
・浮動小数点

キーワードの解説
  • 浮動小数点
    コンピュータの中で小数点を扱うときのデータ保持の形式のこと。
    レジスタ内を正負を表すビット(S)と、指数を表すビット(E)、数値を表すビット(M)に分けて使用する。
    コンピュータのレジスタのサイズ(8、16、32、64ビット)により、EとMのサイズは異なる。
    なお、Sは最上位の1ビット固定(2ビット以上でも意味がない)です。

もっと、「浮動小数点」について調べてみよう。

戻る 一覧へ 次へ