アフィリエイト広告を利用しています

広告

posted by fanblog

2018年03月26日

《その349》double型の内部表現(1)


double型の内部表現

 一般的な環境においては、1つの double型浮動小数点数を表現するのに、コンピュータ内部で 64ビットが使われます。

00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
 64ビットを上記のように表すと、
 ・最初の 1ビット(0 で表した部分)は、符号
 ・次の 11ビット(0 で表した部分)は、指数部
 ・残りの 52ビット(0 で表した部分)は、仮数部
という構成になっています。


例(1) −12.75

 負の数ですから、最初の符号ビットは
   1
です。

 次に、12.75 を 2進表記で表すと、
1100.11
すなわち
1.10011 × (2 の 3乗)
です。

指数部には、指数に 1023 を加えて格納するルールになっています。
したがって
3 + 1023 = 1026
1026 の 2進表記は
100 0000 0010 で、これが指数部になります。

 次に仮数部ですが、
   1.10011 の整数部分を省き
   10011 を格納するルールです。
仮数部は 52ビットありますから、
1001 10000000 00000000 00000000 00000000 00000000 00000000
となり、これが仮数部です。

 以上より、double型 −12.75 は、コンピュータ内部に、
11000000 00101001 10000000 00000000 00000000 00000000 00000000 00000000
という表現で格納されます。


例(2) 0.6

 正の数ですから、最初の符号ビットは
   0
です。

 次に、0.6 を 2進表記で表すと、
0.10011001100110011001100・・・
すなわち
1.0011001100110011001100・・・ × (2 の−1乗)
と、循環小数になってしまいます。

指数部には、指数に 1023 を加えて格納するルールになっています。
したがって
−1 + 1023 = 1022
1022 の 2進表記は
011 1111 1110 で、これが指数部になります。

 次に仮数部ですが、
   1.0011001100110011001100・・・ の整数部分を省き、
   0011001100110011001100・・・ を格納するルールです。
仮数部は 52ビットありますから、
0011 00110011 00110011 00110011 00110011 00110011 00110011
となり、これが仮数部です。

 以上より、double型 0.6 は、コンピュータ内部に、
00111111 11100011 00110011 00110011 00110011 00110011 00110011 00110011
という表現で格納されます。


この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバックURL
https://fanblogs.jp/tb/7480274
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック

 たまに、クリック お願いします m(_ _)m

 AA にほんブログ村 IT技術ブログ C/C++へ

こうすけ:メール kousuke_cpp@outlook.jp

【1】★★C++ 記事目次★★ ← 利用可能です。
・新版明解C++入門編 / 新版明解C++中級編
・その他 C++ 関連記事

【2】★★こうすけ@C#★★
・C# の初歩的な記事


検索
<< 2018年08月 >>
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
プロフィール
こうすけさんの画像
こうすけ

 たまに、クリック お願いします m(_ _)m

 AA にほんブログ村 IT技術ブログ C/C++へ

こうすけ:メール kousuke_cpp@outlook.jp

【1】★★C++ 記事目次★★ ← 利用可能です。
・新版明解C++入門編 / 新版明解C++中級編
・その他 C++ 関連記事

【2】★★こうすけ@C#★★
・C# の初歩的な記事


×

この広告は30日以上新しい記事の更新がないブログに表示されております。