2進数・10進数変換
数値を1行に1つずつ入力すると、すぐに2進数・10進数が変換されます。
入力した文章やファイルはサーバーに送らず、このブラウザー内だけで処理します。
使い方
- 入力欄に数値を1行に1つずつ入力します。0b の接頭辞や区切りの空白・アンダースコアはそのままで構いません。
- 小数点を含む数も変換できます。2進数の0.101は10進数の0.625になります。
- 10進数の0.1のように2進数では割り切れない小数は、「小数部の最大桁数」で打ち切り、末尾に「…」を付けて表示します。
- 「2の補数のビット幅」を選ぶと、-1を8ビットの11111111のように表したり、最上位ビットが1の2進数をマイナスとして読んだりできます(整数のみ)。
よくある質問
2進数を10進数に直す計算方法は?
右から順に各桁に1, 2, 4, 8…(2の累乗)を掛けて足します。1010なら8+0+2+0=10です。小数部は左から1/2, 1/4, 1/8…を掛けて足します。
0.1が2進数で割り切れないのはなぜ?
2進数で有限桁になる小数は、分母が2の累乗の分数だけです。0.1(=1/10)は分母に5を含むため0.000110011…と無限に続き、プログラムの小数計算で誤差が出る原因にもなっています。
大きな数でも誤差は出ませんか?
BigIntで計算しているため、整数部は桁数に関係なく丸めずに変換します。2進数の小数は10進数では必ず有限桁になるので、最後の桁まで表示します。