情報処理 浮動小数点形式と固定小数点形式 コンピュータ回路の特性として・・・ 計算は・・・ 足し算(加算)しかでき ない! <例>コンピュータ回路の場合 3 + 1 = 4 ↓ 加算(足し算)は可能 マイナス(-)を 使用できれ ば減算がで きる! 3 3 - - 1 1 = = ? 2 ↓ 減算(引き算) は不可能 減算(引き算)専用 の回路を別に準備し ないといけない!! 減算ができるようしたい 補数 を使えば加算装置で減算ができる 「負の数(マイナス)」を表現することもできる! 表記の方法 <例>「101」 (101)10 2進数なら⇒ (101) 2 10進数なら⇒ 2進数の小数点の表示方法 (0.1)2 ⇒ (0.5)10 ×2 ×1 2 =0.5 (111, 1 (421, 1 1 1 0 . 5 0 . 2 5 0 . 1 2 5 0.625 )2 )10 表現方法について 固定小数点形式 浮動小数点形式 固定小数点形式 ⇒小数点の位置を最下位(1番右)に固 定した表現 ⇒最上位の桁は符号が入る。 <例1>(+21)10を2進数にする。 「+21」を2進数にする 1 0 1 0 0 0 0 0 0 1 0 小数点の位置 符号が+なら0 符号が-なら1 補数を使い(+00111101)2を負の数 で表現する方法 (00111101)2 1の補数 という ・符号部分を「1」にする ・符号部分以外を「0」と「1」を反転する ・符号部分は反転させない (11000010)2 2の補数 という 「+1」を加算する (01000011)2 <例2>(-21)10を2進数の固定表現 形式にする 「-」なので1 符号部分以外を 「0」と「1」を反転にする 「+1」加える 1 0 0 1 1 0 1 1 0 1 0 1 1 0 0 1 1 0 1 小数点の位置 表現方法について 固定小数点形式 浮動小数点形式 <例3>浮動小数点形式 整数から正規化までの手順 (+21.625)10 正規化 = 0.21625 × 100 = 0.21625 × 10 仮数部 指数 指数部 2 <例4>10進数21.625を2進数の 浮動小数点形式で表記する。 (21.625)10 = (10101.101) 2 正規化 符号部 5 = 0.10101101 × 2 (1ビット) 指数部 符号部,指数部,仮数部に分け て表現する 仮数部 (7ビット) (24ビット) 5 + 64 0 10 0 0 00 00 10 0 011 0 10 001000101000100 00 00 00 0 0 0 0 0 00 00 0000000000 0 1 1 ▲小数点の位置 常に(64)10 を加えて表現する 仮数部はその まま持ってくる 固定小数点形式と浮動小数点形式の 特徴の違い 固定小数点は 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 ▲小数点の位置 ①10進数なら0~ 255までしか表現できない。 ②複雑な初期設定(フォーマット)がいらないため演算が 高速で行える。 ③比較的に安価でハードを購入することができる。 固定小数点形式と浮動小数点形式の 特徴の違い 浮動小数点形式は2進数の下記の8ビットなら 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 ▲小数点の位置 ▲小数点の位置 10進数なら0.25~128まで表現可能 10進数なら0~ 255まで表現可能 ①表現できる範囲が非常に広い ②複雑なフォーマットが必要なため処理に時間がかかる (固定小数点形式の10倍~100倍かかる) ③誤差(1÷3=0.3と表示など)が出やすく、誤差を事前 に分かっている科学技術の計算などに用いられる。 固定小数点形式と浮動小数点形式 のまとめ 固定小数点形式 ・小数点の位置が固定 浮動小数点形式 ・表現できる範囲が広い ・計算速度が速い ・計算速度が遅い ・比較的に安価である ・計算の誤差が出やすい
© Copyright 2024 ExpyDoc