プレビュー: 日本語版は確認中のプレビューで、検索インデックスには登録されません。
基数変換:2進数、8進数、10進数、16進数
2進数、8進数、10進数、16進数の4つの位取り記数法で整数を変換します。JavaScript BigIntを使うため、受け付ける大きな整数も丸めず正確に処理します。
変換できます数値を入力して基数を選択してください
入力時の注意
- 2進数は0と1のみ(例:1101)。
- 8進数は0〜7の数字(例:755)。
- 16進数は0〜9とA〜Fを大文字・小文字どちらでも使用できます(例:1F、a3)。
- 16進数の入力に限り、0xまたは0Xを先頭に付けられます。2進数の0b、8進数の0o接頭辞は使えません。
- 入力上限は4,096桁です。非負整数を扱い、負数や小数には対応しません。
位取り記数法の仕組み
2進数(基数2)
0と1を使い、各桁は2の累乗を表します。コンピューターはデジタル状態で情報を符号化し、2進数でその値を表します。
8進数(基数8)
0〜7を使います。8進数1桁は2進数3桁に対応し、Unix権限など一部のビット列を短く表せます。
10進数(基数10)
0〜9を使う、日常的な記数法です。各桁は10の累乗を表します。
16進数(基数16)
0〜9とA〜Fを使います。1桁が2進数4桁に正確に対応するため、長いビット列を短く書けます。
計算例
- 2進数1010 → 10進数10:1×8 + 0×4 + 1×2 + 0×1 = 10。
- 10進数255 → 16進数FF。
- 16進数3F → 2進数111111(4桁ごとに分けると0011 1111)。
- 8進数755 → 10進数493:7×64 + 5×8 + 5 = 493。
主な用途
- プログラミング:ビットマスク、フラグ、アドレス表現。
- 電子機器:デジタル状態とレジスター値。
- Webデザイン:#FF6B35のような16進数カラーコード。
- オペレーティングシステム:Unixファイル権限のビット表現に8進数がよく使われます。
- Base64はバイトをテキストにする符号化方式で、位取り基数ではありません。専用のテキスト符号化ツールを使用してください。
変換早見表
| 10進数 | 2進数 | 8進数 | 16進数 |
|---|---|---|---|
| 8 | 1000 | 10 | 8 |
| 15 | 1111 | 17 | F |
| 16 | 10000 | 20 | 10 |
| 64 | 1000000 | 100 | 40 |
| 255 | 11111111 | 377 | FF |
| 1024 | 10000000000 | 2000 | 400 |
手作業での簡単な変換
10進数から2進数へは2で繰り返し割り、余りを下から読みます。13の余りは1、0、1、1となり1101です。2進数から16進数へは右から4桁ずつまとめます。11010110は1101 | 0110、つまりD6です。
よくある質問
16進数の前に付く0xは何ですか?
多くのプログラミング言語で基数16を示す接頭辞です。0xFFは255です。0Xも受け付けますが、0bと0oは受け付けません。
基数を16より大きくできますか?
はい。基数36は0〜9とA〜Zを使うコンパクトな識別子などに利用されます。このツールで選べるのは2、8、10、16です。
負数や小数を変換できますか?
いいえ。非負整数のみ対応します。
2進数の表現に16進数が便利なのはなぜですか?
16進数1桁が正確に4ビットに対応するためです。たとえばD6は2進数で1101 0110です。