進数変換

整数を2進数・8進数・10進数・16進数、および2〜36進数の間で変換します。

計算は端末内で行われ、入力値をサーバーへ送りません。

具体例

10進数の255は、16進数でFF、2進数で11111111、8進数で377です。負の整数にも対応します。

計算方法・仕組み

入力の各桁が選んだ基数で使える数字かを確認し、正確な整数演算で値を求めます。その整数を、出力側の基数で数字0〜9と英字A〜Zを使って表し直します。

注意事項

入力と出力の基数は異なる必要があり、2〜36の範囲で選べます。入力は256桁までで、0xのような接頭辞、区切り文字、小数点、小数部は付けないでください。

まず入力された数の基数を特定する

数字の並びだけでは基数は決まりません。10は2進数なら2、10進数なら10、16進数なら16を意味します。元の数が何進数で書かれているかを選んでから、変換先を指定してください。英字は10〜35を表すので、Fは16進数では有効でも10進数では使えません。

位取りで変換を検算する

16進数のFFは 15 × 16 + 15 = 255 です。2進数101010は 1 × 32 + 0 × 16 + 1 × 8 + 0 × 4 + 1 × 2 + 0 = 42 になります。下の例で方向を確認し、変換後に基数を入れ替えて逆変換すると検算できます。先頭の0が省かれても数値は元に戻ります。

符号付き整数とバイト表現を区別する

負の数はマイナス記号を残すため、-42を2進数にすると-101010です。固定ビット幅の2の補数表現ではありません。バイト数、バイト順、文字コードは推測しません。0xや0bの接頭辞を除き、256桁以内の小数点のない整数を入力してください。通常の浮動小数点数では丸めが起こる大きな整数も、整数演算で厳密に変換します。

具体例 · 計算方法・仕組み
具体例結果
255₁₀ → 16FF
FF₁₆ → 211111111
101010₂ → 1042
377₈ → 10255
Z₃₆ → 1035
−42₁₀ → 2−101010

よくある質問

各基数で使える数字は?

2進数は0〜1、8進数は0〜7、10進数は0〜9、16進数はそれにA〜Fが加わります。36進数までは英字をZまで使え、大文字・小文字は区別しません。

先頭の0は残りますか?

いいえ。先頭の0は整数の値を変えないため、変換結果からは取り除かれます。マイナスの0は0として表示します。

大きな整数も正確に変換できますか?

はい。正確な整数演算を使い、入力は256桁まで受け付けます。小数や指数表記には対応していません。

関連ツール