修了試験 2012-07-22実施分 基本情報技術者試験 問2
次の24ビットの浮動小数点形式で表現できる最大値を表すビット列を,16進数として表したものはどれか。 ここで,この形式で表現される値は(-1)^S×16^(E-64)×0.Mである。

正答2
解説
正解は2です。 図の形式は、先頭1ビットが仮数部の符号S、続く7ビット(第1〜7ビット)が指数部E、残り16ビット(第8〜23ビット)が仮数部Mです。 Sは0が非負、1が負を表します。 Eは実際の指数に64を加えた値で、0以上127以下の範囲をとります。 Mは絶対値表現です。 表せる最大値は、符号が非負で、指数と仮数がともに最大のときです。 【計算】 最大値の条件は、S=0、E=127=(1111111)_2、Mの16ビットがすべて1です。 ビット列は「0」「1111111」「1111111111111111」を並べたものです。 4ビットずつ区切ると、0111 1111 1111 1111 1111 1111になります。 16進数で表すと7FFFFFです。 【選択肢別解説】 1:× 3FFFFFは2進数で0011 1111…となり、S=0、E=(0111111)_2=63です。 値は16^(63-64)×0.Mで1未満にすぎず、最大値ではありません。 2:○ 7FFFFFは、S=0、E=127、Mがすべて1のビット列です。 非負で指数も仮数も最大なので、この形式で表せる最大値になります。 3:× BFFFFFは2進数で1011 1111…となり、先頭のSが1なので負の数です。 負の数は最大値になりません。 4:× FFFFFFは、S=1、E=127、Mがすべて1のビット列です。 絶対値は最大ですが符号が負なので、表せる最小値(最も小さい負の数)になります。 【ポイント】 最大値は「符号0・指数最大・仮数すべて1」、最小値は「符号1・指数最大・仮数すべて1」と覚えます。 符号ビットが先頭にある形式では、16進数の先頭の桁が8以上なら負の数です。まとめて解く
修了試験 2012-07-22実施分を通しで解く(80問)→