図に示す16ビットの浮動小数点形式において、10進数 0.25 を正規化した表現はどれか。
ここで、正規化は仮数部の最上位けたが1になるように指数部と仮数部を調節する操作とする。
s :仮数部の符号(0:正、1:負)
e :指数部(2を基数とし、負数は2の補数で表現)
f :仮数部(符号なし2進数)
答え ウ
【解説】
10進数0.25を2進数で表現すると[0.01]2になる。
これを浮動小数点で表現すると符号s は0.25は正の数なので0、指数部e は0000、仮数部f は01000000000になり、
0 0000 01000000000
となる。
これを正規化すると、仮数部は最上位ビットが0にならないようにするので、左に1ビットシフト(2倍)する必要があり、指数部はこれにあわせて2-1を意味する-1(1111)にする必要がある。(今回の正規化では[0.01×20]2を[0.1×2-1]2にする。)
したがって、正規化した結果は
0 1111 10000000000
(ウ)になる。
【キーワード】
・浮動小数点
【キーワードの解説】
- 浮動小数点
コンピュータで実数を扱うときの表現方法の一つで、各けたの数位を示す「仮数部」と小数点の位置を表す「指数部」で表現します。
浮動小数点による表現を使うことで、広い範囲の値を、有効けた数をフルに利用して表現できるため、小数点の位置を固定した表現方式よりもよく使われる。ただし、浮動小数点を用いた処理は時間がかかる問題があるため、最近のCPUでは浮動小数点を効率的に処理するために専用の処理部を持っている場合が多い。
もっと、「浮動小数点」について調べてみよう。
戻る
一覧へ
次へ
|