普段使用している数値は10進数(10進法)です。1234567890…。
コンピュータの内部では10進数(10進法)ではなく、ほぼすべてで2進数(2進法)で動作しています。コンピュータは、2進数しか理解・計算できません。
当ページでは、2進数から10進数に変換する手順を記載しています。10進数から2進数への変換は「10進数→2進数」を参照ください。
(注意!)この計算は、2進数の小数を「.」(ドット)で表しています。浮動小数の場合は実際のデータは指数で保有されるため、下記の計算とは違うビット配列となるのでご注意ください。
変換元の2進数を以下とすると
2進数 | 11110011.10110100 |
---|
(1) 2の補数でプラスに変換
2進数の先頭1bitが"1"(マイナス)のため、2の補数で2進数をプラスに変換します。
符号なし2進数や先頭1bitが"0"の場合は変換不要です。
2進数 (2の補数前) | 11110011.10110100 |
---|
2進数 (2の補数後) | 00001100.01001100 |
---|
(2) 2進数を整数部と小数部に分ける
2進数を10進数に変換する場合、整数部と小数部で計算方法が異なります。このため整数部と小数部を分割します。
整数部 | 小数部 | |
---|---|---|
00001100 | . | 01001100 |
(3) 整数部に2のn乗を掛けて10進数を求める
整数部:下から上(右から左)に×20,×21,×22・・・
累乗 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 |
---|---|---|---|---|---|---|---|---|
2進数 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 |
10進数(整数部) | 12 |
---|
(4) 小数部に2の-n乗を掛けて10進数を求める
上から下(左から右)に×2-1,×2-2,×2-3・・・
累乗 | 2-1 | 2-2 | 2-3 | 2-4 | 2-5 | 2-6 | 2-7 | 2-8 |
---|---|---|---|---|---|---|---|---|
2進数 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 0 |
10進数(小数部) | 0.296875 |
---|
(5) 整数部と小数部を加算し符号を付ける
計算した整数部と小数部を加算する。また、変換元の2進数がマイナスのため10進数もマイナスとする。
10進数 | -12.296875 |
---|
cman.jp内 関連ページ |
---|
2,8,10,16進数 計算・変換(マイナス、小数点対応) |
2の補数とは? |
2進数,8進数,16進数とは? |