2進数・8進数・10進数・16進数を相互に変換します。プログラミングの学習や、色コード・権限・フラグの読み解きに使えます。
それぞれの使いどころ
16進数が使われるのは、1桁で4ビット(0〜15)をちょうど表せるためです。2桁で1バイト(8ビット)を表現できるので、色コード(#RRGGBB)のように各成分を2桁で書けます。
| 進数 | 表記例 | 主な用途 |
|---|---|---|
| 2進数 | 1010 | ビット演算、フラグ、権限 |
| 8進数 | 0o755 | Unixのファイル権限 |
| 10進数 | 10 | 日常の数値 |
| 16進数 | 0xFF | 色コード、メモリアドレス、バイト表現 |
覚えておくと速い対応
0〜15の対応を覚えておくと、16進数の読み書きが一気に速くなります。FF は255で、色コードの各成分の最大値です。
2進 10進 16進 1111 = 15 = F 1 0000 = 16 = 10 1111 1111 = 255 = FF
プログラミングでの表記
- 2進数:0b1010(多くの言語)
- 8進数:0o755(現代的な表記)、0755(古い表記)
- 16進数:0xFF、#FF(CSS)
ビット演算の基礎
権限やオプションのフラグ管理では、各ビットに意味を割り当てて1つの整数で扱う方法がよく使われます。2進数で見ると、どのフラグが立っているかが一目で分かります。
AND (&) 両方1なら1 1010 & 0110 = 0010 OR (|) どちらか1なら1 1010 | 0110 = 1110 XOR (^) 片方だけ1なら1 1010 ^ 0110 = 1100 左シフト (<<) 2倍 1010 << 1 = 10100
よくある質問
Q なぜ16進数が使われるのですか?
1桁で4ビットを表せるため、2進数との対応が分かりやすいからです。2桁で1バイトを表現できます。
Q 負の数は変換できますか?
本ツールは非負整数を対象としています。負数の内部表現(2の補数)はビット幅の指定が必要です。
Q 小数の変換はできますか?
整数部分の変換に対応しています。小数の2進表現は無限桁になることがあります。
Q chmodの755とは何ですか?
8進数でファイル権限を表したものです。各桁が所有者・グループ・その他の権限を表します。
