2進数→10進数変換
任意の2つの基数の間で数値を変換します。
02進数
08進数
010進数
016進数
ブラウザ内で動作します。入力した内容はどこにも送信されません。
- 2〜36の基数に対応
- 桁数の多い数値も正確
- オフラインでも動作
基数を変換する方法
- 変換したい数値の基数を選びます。
- 数値を入力します。
- 2進数、8進数、10進数、16進数の結果を一度に確認します。
よく使われる基数
| 基数 | 名称 | 使用する数字 |
|---|---|---|
| 2 | 2進数 | 0-1 |
| 8 | 8進数 | 0-7 |
| 10 | 10進数 | 0-9 |
| 16 | 16進数 | 0-9、A-F |
| 36 | 36進数 | 0-9、A-Z |
例:数値255をすべての基数で表す
| 基数 | 表記 |
|---|---|
| 2進数 | 11111111 |
| 8進数 | 377 |
| 10進数 | 255 |
| 16進数 | FF |
さまざまな基数が使われる場面
- プログラミングにおける色、メモリアドレス、バイト値の16進数。
- chmod 755のような、従来のUnixファイル権限の8進数。
- 少ない文字数でより多くの値を表せるため、コンパクトな識別子に使われる32進数や36進数などの高い基数。
- コンピュータが数値をどう保存しているかを正確に理解するための2進数。
- バイナリデータをテキストに詰め込むためのBase64。これは単純な基数変換とは異なる仕組みで、このサイトのBase64エンコード・デコードツールで扱っています。
知っておきたいビット演算の事実
- 2進数値の末尾のゼロの数は、その値が2で何回割り切れるかを表し、低レベルコードでアライメントを手早く確認する方法になります。
- 2進数のすべてのビットを反転して1を足すと2の補数による負の数になり、これはほとんどのコンピュータが内部で負の整数を表す方法です。
- 16進数の各桁はちょうど2進数4桁に対応するため、長い2進数の値を短く正確に表す代わりとして16進数が使われます。
基数変換のFAQ
非常に大きな数値も扱えますか?
はい。任意精度演算を使っているため、数十桁の数値でも丸めなしで正確に変換できます。
基数10を超える場合、どの文字が有効な数字になりますか?
a〜zの文字が10〜35の数字を表すため、16進数は0-9とa-fを、36進数はすべてのアルファベットを使います。
結果が0になるのはなぜですか?
入力に、選んだ基数では有効でない文字が含まれている可能性があります。まず基数が正しいか確認してください。
対応している最大の基数は?
36進数で、0-9の数字とa〜zの文字を使います。「カスタム」を選べば2〜36の任意の基数を入力できます。
負の数も変換できますか?
いいえ。マイナス記号を付けず、数字だけを入力してください。このツールは0以上の整数を扱います。
chmod 755のようなUnixのファイル権限は8進数とどう関係しますか?
8進数の各桁は、所有者・グループ・その他それぞれの読み取り・書き込み・実行の3つの権限ビットを表します。755は所有者に読み取り・書き込み・実行、それ以外に読み取り・実行の権限を意味します。
小数点付きの数値も変換できますか?
いいえ。小数点はどの基数でも有効な数字ではなく入力全体が無効になるため、ここでは整数のみ変換できます。
扱える最大の数値は?
実用上の上限はありません。内部でBigInt演算を使っているため、50桁の数値でも丸めや精度の損失なく正確に変換できます。