浮動小数点
2進数の実数は、コンピュータの中で特別な方法で保存されなければならない。コンピュータは2進数の整数(2の累乗の整数)として数を表現するので、基数がないため小数のような非整数の数を直接表現することはできない。浮動小数点とは、指数(累乗)を乗じたときに基数が大きくなったり小さくなったりすることを意味する。
概要
数学や科学では、非常に大きな数、非常に小さな数を理解しやすくするために、10の累乗で単純化することがよくあります。例えば、1.2兆は1.2 × 10 12 {displaystyle 1.2times 10^{12}} と読む方が1,200,000,000,000よりずっと簡単です。これは負の10の累乗でも使えるので、0.000001 {displaystyle 0.000001} を1 × 10 - 6 {displaystyle 1times 10^{-6}} と表現することができます。.このような表記方法を科学的記数法といいます。
コンピュータは整数と2進数に限定されているため、小数点の10進数を簡単に表現できないことになる。分数を表現するために、コンピュータは浮動小数点数を用いて、科学的記数法で数を2つの部分に分割する。シグニフィカンドは数の整数版であり、指数はベースに乗じるべき乗である。
シグニフィカント
シグニフィカンドは、実数から基数を取り除き、整数にすることで求められます。例えば、1101.0111 {displaystyle 1101.0111} は、11010111 {displaystyle 11010111} となります。これは10進数で1.45 {displaystyle 1.45} を145 {displaystyle 145} にするのと同じで、意味は全く違うが基数を除けば同じ数字である。科学的記数法がシグニフィカンドをできるだけ基本にするのと同様に、浮動小数点数では整数にしてバイトで表現して計算で使えるようにすることが目的です。
指数
指数は基数点が過去に移動した桁数です。左に移動した場合は指数が正になり、右に移動した場合は負になります。上の例では、2進法が4桁左に移動したので、指数は 00000100 {displaystyle 00000100} (2 4 {displaystyle 2^{4}} の4を表す) になります。分数を表すように点が右に移動する場合は、指数は負になります(例えば、1桁右に移動すると、2 - 1 {displaystyle 2^{-1}} または 11111111 {displaystyle 11111111} ; negative binary numbers を参照してください)。
結果
結果は、シグニフィカントと指数を合わせて求めます。上記の例のいくつかを使って
バイナリーポイント | シグニフィカント | 指数 | 結果 |
1101 .0111) | 1101 0111 | 0000 0100 | 1101 0111 0000 0100 |
0000.0111 | 0000 0111 | 1111 1111 | 0000 0111 1111 1111 |
質問と回答
Q:実数とは何ですか?
A:実数とは10進数で表せるすべての数のことで、分数や無理数を含みます。
Q:コンピュータは2進数をどのように記憶しているのですか?
A:コンピュータは2進数を2の累乗である整数として記憶しています。
Q:コンピュータが小数のような非整数を表現する直接的な方法はあるのでしょうか?
A:いいえ、基数が存在しないので、コンピュータが非整数を小数のように表現する直接的な方法はありません。
Q:浮動小数点数表示の目的は何ですか?
A:浮動小数点表現は、指数(累乗)を乗じたときに基数を高くしたり低くしたりすることで、基数を持たないという問題を回避することを可能にします。
Q:浮動小数点表現における「浮動」とは何を指しているのですか?
A:「浮動」とは、指数(累乗)を掛けたときに、基数点が高くなったり低くなったりすることを指します。
Q:指数(累乗)はどのように計算するのですか?
A:指数(累乗)は、ある基数をある回数だけ掛け合わせることで算出されます。例えば、2×2×2=8なので、2^3=8となります。