基数変換ツール
2から36までの好きな基数で数値を入力すると、このツールが他の代表的な基数、つまり2進数、8進数、10進数、16進数での等価な表記を表示します。数字がアルファベットまで及ぶ36までのカスタム基数にも対応します。符号付き整数を扱えるほか、基数をまたいで値を正確に表したいときは小数部分もオプションで扱えます。
変換ツールの使い方
-
1
変換元の基数を選ぶ
入力する数値がどの基数で書かれているかをツールに伝えます。
-
2
値を入力する
10までの基数では0~9を、値が10~35になる桁にはA~Zを使います。
-
3
変換先の基数をまとめて読む
ツールは2進数、8進数、10進数、16進数、そして選んだ任意のカスタム基数へ変換します。
-
4
計算過程を確認する
各桁の位取りを分解して示すので、変換結果の検算にも、人に教えるときにも使えます。
代表的な基数と使える数字
| 基数 | 名称 | 使う数字 |
|---|---|---|
| 2 | 2進数 | 0、1 |
| 8 | 8進数 | 0-7 |
| 10 | 10進数 | 0-9 |
| 16 | 16進数 | 0-9、A-F |
| 32 | Base32 | 0-9、A-V(RFC 4648) |
| 36 | 英数字 | 0-9、A-Z |
位取り展開による変換
16進数の 1A3 は次の値になります。
1 · 16² + 10 · 16¹ + 3 · 16⁰
= 256 + 160 + 3
= 419₁₀
逆向きに変換するときは、変換先の基数で割り算を繰り返し、余りを集めます。
419 / 16 = 26 余り 3
26 / 16 = 1 余り 10 (A)
1 / 16 = 0 余り 1
余りを下から上へ読むと 1A3 になります。
プログラマー向けクイックリファレンス
- 2進数から16進数へ: 右から4ビットずつまとめます。
11010110→D6。 - 2進数から8進数へ: 右から3ビットずつまとめます。
11010110→326。 - 16進数から2進数へ: 16進数の1桁がちょうど4ビットになります。
- 符号付き整数: 多くの変換は符号なしを前提にしています。2の補数を使う場合はビット幅が効いてきます。0xFF は符号なしなら255ですが、8ビットの符号付き整数なら -1 です。
意外な理由で使われる基数
- 12進数(duodecimal) は、12が約数を多く持つことから、人が数える単位として提案されたことがあります。
- 20進数(vigesimal) はマヤ数字やヨルバ数字の土台になっています。
- 60進数(sexagesimal) はバビロニア数学から受け継がれ、時間と角度の測定にいまも生き残っています。
よくある質問
36進数は、大文字と小文字を区別せずに数字0~9と英字A~Zだけで表せる、いちばん大きな一般的な基数だからです。62進数は大文字と小文字を別々に数えて範囲を広げますが、標準化はあまり進んでいません。
はい、マイナス記号のついた符号付きの値として扱います。ただしビット単位の2の補数表現(プログラミングで重要になります)では、ビット幅を指定する必要があります。同じ10進数の -1 が、0xFF(8ビット)、0xFFFF(16ビット)、0xFFFFFFFF(32ビット)と変わってしまうからです。
できますが、注意が必要です。10進数の 0.1 は2進数では循環小数(0.00011001100…)になります。浮動小数点の計算にわずかな誤差が出るのはこのためです。このツールは、指定した桁数まで小数部分を表示します。
バイナリをテキストに変換するエンコード方式であって、ふつうの意味での基数ではありません。3バイト(24ビット)を、64文字の文字集合から選んだ4つのASCII文字として符号化します。メールのようにテキストしか通せない経路でバイナリを送るときに便利です。
関連ツール
ASCII表リファレンス
0から127までの完全なASCII表です。NUL、LF、DELなどの制御コードを含め、各文字の10進数、16進数、8進数、2進数、HTML数値文字参照を表示します。
HTML文字参照
HTMLエンティティの検索可能なリスト、その名称コードおよび数値コード、および特殊文字や記号のワンクリックコピー機能を提供します。
キーボードショートカット一覧
macOS、Windows、Linux向けに、VS Code、Chrome、GNU Readlineを使うBashの公式資料に基づく既定ショートカットを検索できます。
JavaScript圧縮ツール
変数名のリネーム、空白の削除、デッドコードの除去、定数畳み込みでJavaScriptを圧縮し、より小さなバンドルを作成します。
FPS カウンター
requestAnimationFrame でブラウザーの FPS を測定。平滑化、最小・最大フレームレート、警告しきい値、任意のグラフに対応。ローカルで動作し、アップロードも API も不要です。
EditorConfig ジェネレーター
インデントのスタイルとサイズ、改行コード、文字コード、空白ルールを指定して .editorconfig ファイルを生成し、IDE やエディタをまたいで書式を統一できます。
このツールは他の言語でも利用できます
- Conversor de base numérica [PT]
- Công cụ chuyển đổi cơ số [VI]
- Convertidor de bases numéricas [ES]
- 진법 변환기 [KO]
- Convertisseur de bases numériques [FR]
- Talbasomvandlare [SV]
- محوّل الأنظمة العددية [AR]
- Zahlenbasis-Konverter [DE]
- Talstelsel omrekenen [NL]
- Konverter Basis Bilangan [ID]
- เครื่องแปลงฐานตัวเลข [TH]
- Konwerter systemów liczbowych [PL]
- Number Base Converter [EN]
- Convertitore di basi numeriche [IT]
- Конвертер систем счисления [RU]
- Sayı Tabanı Dönüştürücü [TR]
- 进制转换器 [ZH]