仮数部の計算結果が反映されない
絶対値の非常に大きな数と小さな数の加減算を行った時、指数部が小さい方の仮数部の下位部分が計算に反映されないために発生する誤差
情報落ちの過程 小さい方が右シフトで消える
指数部の値が異なる二つの数の加減法では、
指数部を大きい方に揃えてから演算
する。そのため、`指数部の小さい方の数の仮数部の値が右にシフトされ、情報落ちが発生する。
整数部を0になるまで繰り下げてそれぞれの値を設定する
浮動小数点数は、1つの小数点数を「符号部」「仮数部」「指数部」という3つの整数の情報で表すものです。
どれも整数なので、1と0だけで表せます。
例として、-101.011という2進数の小数点数を3つの整数で表してみましょう。
整数部が0で小数点以下1桁目が1になるように桁をずらしてください。
-101.011=-0.101011×2^3になります。
-0.101011×2^3において、
-が符号部
、小数点以下の101011が仮数部
、2^3の3が指数部
です。
符号部は、プラスを0とし、マイナスを1とすれば、1と0だけの整数です。
指数部の3は、2進数で表すと11なので、これも1と0だけの整数です。
仮数部の101011は、これも1と0だけの整数です。
この形式にするために、-101.011の小数点の位置をずらしたのです。
浮動小数点数の「浮動」は、小数点の位置をずらすことを意味しています。
-101.011という小数点数を、
符号部0
、仮数部101011
、指数部11
という3つの整数の情報で表せました。
符号部、仮数部、指数部を、それぞれ何ビットで表し、どのような順に並べるかを取り決めれば、1つの浮動小数点数になります。
例えば、符号部1ビット
、仮数部11ビット
、指数部4ビット
で、符号部
、指数部
、仮数部
の順に並べて、全体で16ビットのデータにするなら、[0][0011][10101100000]
という浮動小数点数になります。
ここでは、わかりやすいように [ ] で区切っていますが、実際には、0001110101100000
という1つのデータです。
- 多分
-
だから符号部は1だと思う
感想
数学難しいな