基数変換ツール

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進数
0000
1111
21022
31133
410044
510155
611066
711177
81000108
91001119
10101012A
11101113B
12110014C
13110115D
14111016E
15111117F
16100002010
321000004020
64100000010040
100110010014464
1281000000020080
25511111111377FF
256100000000400100
51210000000001000200
1024100000000002000400

2のべき乗

べき乗 10進数の値 16進数
2011
2122
2244
2388
241610
253220
266440
2712880
28256100
29512200
2101024400
2166553610000
2201048576100000
230107374182440000000
2324294967296100000000

よくある質問

どの基数の間で変換できますか?

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個の文字で構成されます。これは、標準的な英数字の記号を使ってこのツールが対応できる最大の基数です。