基数変換ツール
2進数・8進数・10進数・16進数、および2〜36の任意の基数の間で整数を変換します。値を入力して基数を選ぶと、他のすべての基数が即座に更新されます。任意の大きさの整数に対応(正確、丸めなし)。
基数とは?
基数(radix)とは、位取り記数法で使う数字の種類がいくつあるかを表すものです。10進数(base 10)は0–9の10個の数字を、2進数(base 2)は0と1の2個だけを使います。どの基数でも各桁の重みはその基数のべき乗になっており、2進数の1011は10進数で 1×8 + 0×4 + 1×2 + 1×1 = 11 を表します。
よく使われる4つの基数
- 2進数(base 2)はコンピュータにとって最も自然な表現です。各ビットは0か1のいずれかで、回路のオフ/オンの状態にそのまま対応します。
- 8進数(base 8)は3ビットを1桁にまとめる表記で、755のようなUnixのファイルパーミッションに古くから使われてきました。
- 10進数(base 10)は0–9の10個の数字を使う、私たちが日常的に使う記数法です。
- 16進数(base 16)は2進数をコンパクトに書く方法です。16進1桁が4ビットに対応するため、1バイトはちょうど16進2桁で表せます(FF = 255)。色の指定やメモリアドレス、バイトダンプなどに使われます。
基数どうしを変換する方法
- 10進数から2進数へ:2で繰り返し割り、その都度の余りを記録して、下から上へ読みます。13は1101になります。
- 2進数から10進数へ:各桁にその桁の重み(…8, 4, 2, 1)を掛けて合計します。1101は 8 + 4 + 0 + 1 = 13 になります。
- 16進数から2進数へ:16進の各桁を1桁ずつ4ビットに変換します。FFは1111 1111に、2Aは0010 1010になります。
基数変換表
よく使う10進数の値を2進数・8進数・16進数で示します。
| 10進数 | 2進数 | 8進数 | 16進数 |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 1 | 1 | 1 | 1 |
| 2 | 10 | 2 | 2 |
| 3 | 11 | 3 | 3 |
| 4 | 100 | 4 | 4 |
| 5 | 101 | 5 | 5 |
| 6 | 110 | 6 | 6 |
| 7 | 111 | 7 | 7 |
| 8 | 1000 | 10 | 8 |
| 9 | 1001 | 11 | 9 |
| 10 | 1010 | 12 | A |
| 11 | 1011 | 13 | B |
| 12 | 1100 | 14 | C |
| 13 | 1101 | 15 | D |
| 14 | 1110 | 16 | E |
| 15 | 1111 | 17 | F |
| 16 | 10000 | 20 | 10 |
| 32 | 100000 | 40 | 20 |
| 64 | 1000000 | 100 | 40 |
| 100 | 1100100 | 144 | 64 |
| 128 | 10000000 | 200 | 80 |
| 255 | 11111111 | 377 | FF |
| 256 | 100000000 | 400 | 100 |
| 512 | 1000000000 | 1000 | 200 |
| 1024 | 10000000000 | 2000 | 400 |
2のべき乗
| べき乗 | 10進数の値 | 16進数 |
|---|---|---|
| 20 | 1 | 1 |
| 21 | 2 | 2 |
| 22 | 4 | 4 |
| 23 | 8 | 8 |
| 24 | 16 | 10 |
| 25 | 32 | 20 |
| 26 | 64 | 40 |
| 27 | 128 | 80 |
| 28 | 256 | 100 |
| 29 | 512 | 200 |
| 210 | 1024 | 400 |
| 216 | 65536 | 10000 |
| 220 | 1048576 | 100000 |
| 230 | 1073741824 | 40000000 |
| 232 | 4294967296 | 100000000 |
よくある質問
どの基数の間で変換できますか?
2から36までの任意の基数です。数字0-9に続いてa-zが0〜35の値を表すため、基数16では0-9とa-f、基数36では0-9とa-zを使います。
数値のサイズに制限はありますか?
いいえ。変換には任意精度整数を使用するため、非常に大きな値(数百桁)でも丸めやオーバーフローなしに正確に変換されます。
10進数を手作業で2進数に変換するには?
10進数を2で繰り返し割り、その都度の余りを記録します。余りを最後から最初へ読むと2進数表現になります。
コンピュータはなぜ2進数を使うのですか?
デジタル回路にはオフとオンという2つの安定した状態があり、これがそのまま0と1に対応します。そのため2進数は、電子的にデータを保存・処理するうえで最も信頼性の高い方法となっています。
16進数は何に使われますか?
16進数は2進数を人間にとって扱いやすくした略記法です。16進1桁がちょうど4ビットに対応するため、色の指定(#FF9E0B)やメモリアドレス、MACアドレス、バイト単位のデータは、ほとんどの場合16進数で表記されます。
base 36ではいくつの文字を使いますか?
base 36は0–9に続けてa–zを使い、合計36個の文字で構成されます。これは、標準的な英数字の記号を使ってこのツールが対応できる最大の基数です。