-
-
小数部分を含む実数を表すことを考える。
コンピュータにおいては小数部分を含む値を表記するときには,浮動小数点数
が用いられる。
16ビットの浮動小数点数では, 1ビット目を符号部, 2~6ビット目を指数部,
7~16ビット目を仮数部とした16桁の2進法の表記で実数を表す。
この手順を 10進法の15.25を例として説明すると,次のようになる。
① 10進法で表された値を 2進法で表す。
1
1
10進法の15.25は 152進法で1111 (2), 0.25 は
法で0.01(2)あるので, 1111.01 (2) となる。
4
= であるから2進
22
② 2進法で表した値を「1.○○ × 2°」の形にする。
10進法で 1525 は ① より 1111.01 (2) となり,これは,
1111.01(2)= x 2 + 1 × 2 + 1 × 2′' + 1 × 2° + 0 × 2 " ' + 1 × 2 - 2
=
1
1 x 2 + 1 × 2 ' ' + 1 × 2 2 + 1 × 2 -3 + 0 × 2 4 + 1 × 25 × 2°
となるので, 1.11101 × 2° と表すことができる。 これは,例えば10進法で
1234.56 1.23456×10°であるのと同様であり,位を下げた桁数が2の指数
となる。
3 ②で表したものから, 符号部,指数部, 仮数部を決め, 16ビットの2進法
で表記する。 ここでは符号部は0 を正, 1を負とする。 指数部は②の2の指
数にバイアス値として10進法の15を加え,その和を5ビットの2進数に変
換したものとする。 仮数部は②の「1.○○」の小数点以下の部分を左詰めとし、
空白となる桁には0を入れるものとする。 なお, 桁が足りない場合は下位を切
り捨てる。
② で 1.11101 × 2°となったので, 符号部については,正なので 0, 指数部
では3にバイアス値である 15を足して18とし, これを2進法にして, 10010
とする。 さらに, 仮数部には 1.11101 の小数点以下の部分のみを入力する。空
白となる桁に0を入れて「1110100000」 とする。
符号部, 指数部, 仮数部をこの順に並べる。
①~③より, 10進法で15.25 は, 16ビットの浮動小数点数では
「O 100101110100000」
と表される。