離散数学(全64問中59問目)
No.59解説へ
規格IEEE 754(IEC 60559)による単精度の浮動小数点表示法は,次のとおりである。10進数14.75をこの規格に従って表示したときの指数部Eのビット列はどれか。
〔IEEE 754〕
0<E<255の時に表示される実数
(-1)s×2E-127×(1+F)
ここで,Sは実数の符号(0:正,1:負)
Eはげたばき(バイアス付き)の指数
Fは純小数
これらS,E,Fの2進数表示を並べて元の数を表す。
例えば,2進数(0.011)2は,(-1)0×2125-127×(1+0.1)2なので,S=0,E=125,F=(0.1)2となる。ここで,( )2内の数は2進数を表す。
〔IEEE 754〕
0<E<255の時に表示される実数
(-1)s×2E-127×(1+F)
ここで,Sは実数の符号(0:正,1:負)
Eはげたばき(バイアス付き)の指数
Fは純小数
これらS,E,Fの2進数表示を並べて元の数を表す。
例えば,2進数(0.011)2は,(-1)0×2125-127×(1+0.1)2なので,S=0,E=125,F=(0.1)2となる。ここで,( )2内の数は2進数を表す。
出典:平成17年秋期 問 2
- 00000010
- 00000011
- 10000010
- 10000011
広告
解説
まず10進数14.75を2進数に変換します。
14.75=8+4+2+0.5+0.25
=23+22+21+2-1+2-2=(1110.11)2
次にFの値となる(1110.11)2を(1+0.***)の形にします。(1+0.***)のように最上位桁が整数1桁目になるためには(1110.11)2を右に3ビットシフト(2-3倍)にする必要があるため、以下のように正規化されます。
(1110.11)2=(1+0.11011)×23指数部分は127のバイアスが付いた値で表示されるため、上記の23の指数部「3」から以下のように逆算します。
3=E-127
E=130
よって指数部の値(E)は10進数で130になり、これを2進数で表した 10000010 が正解となります。
14.75=8+4+2+0.5+0.25
=23+22+21+2-1+2-2=(1110.11)2
次にFの値となる(1110.11)2を(1+0.***)の形にします。(1+0.***)のように最上位桁が整数1桁目になるためには(1110.11)2を右に3ビットシフト(2-3倍)にする必要があるため、以下のように正規化されます。
(1110.11)2=(1+0.11011)×23指数部分は127のバイアスが付いた値で表示されるため、上記の23の指数部「3」から以下のように逆算します。
3=E-127
E=130
よって指数部の値(E)は10進数で130になり、これを2進数で表した 10000010 が正解となります。
広告