こんばんは!きよです!
今回は応用情報の小数点数表現について勉強したことをメモしていきたいと思います
■参考文献(アフィリエイトリンクです!良かったら購入してください!)
平成30年度【春期】【秋期】応用情報技術者 合格教本 (情報処理技術者試験)
■固定小数点数表現
・あらかじめ何桁目を少数とするか決めておく表現方法
・負数を表現するときは、最上位bitを符号bitとした2の補数表現を用いる
例:0.00111011
– 符号なし 00111011(2) = 0.23046875(10)
– 符号あり 00111011(2) = 0.4609375(10)
– 符号あり 10111011(2) = 1000100 + 0000001 = 1000101 = 0.5390625(10)
※符号あり負数の場合: 符号bit以外をbit反転させて1を足す(2の補数表現)
■浮動小数点数表現
・12345.678(10) = 12345678 * 10^-3 のような表現方法
・「12345678」 の部分を仮数部という
・「10」の部分を基数部という
・「-3」の部分を指数部という
・少数点位置が固定されない
・基本的には4byte 32bit で表現される(24bitや64bitもある)
0 00000000 00000000000000000000000
ピンク:符号部 1bit
黒:指数部 8bit
青:仮数部 23bit
・メリット
– 相当数の実数を表現可能
・デメリット
– 誤差を生みやすい
■正規化
・浮動小数点数表現において、仮数部の最上位桁が0以外になるように桁合わせすること
・丸め誤差を少なくし、有効桁数を最大に保つことを目的としている
例:123.125(10)
①2進数変換
123.125(10) = 01111011.0010(2)
②少数位置をずらす
01111011.0010 → 0.11110110010 = 2^7 * 0.11110110010
③正規化
0 00000111 11110110010000000000000
ピンク:符号部 1bit 整数値なので0
黒:指数部 8bit 指数 = 7
青:仮数部 23bit
■有効桁数
・正規化した浮動小数点数の有効桁数は、仮数部のbit数で決まる
最後にまたアフィリエイトリンク貼らせてくださいorz
■参考文献(アフィリエイトリンクです!良かったら購入してください!)
平成30年度【春期】【秋期】応用情報技術者 合格教本 (情報処理技術者試験)
以上、よろしくお願いいたします。