仕組み
テキストは UTF-8 でエンコードされ、各バイトは8ビットで表されます。デコードでは8ビットずつ読み取り、テキストを表示する前にバイトが正しい UTF-8 を構成しているか確認します。
A → 01000001 · 한 → 11101101 10010101 10011100
- バイナリ入力内のスペース、タブ、改行、アンダースコアは無視されます。
- 桁数は8の倍数である必要があります。
- 正しい UTF-8 でないバイトは、文字化けを表示せずに拒否します。
計算例
| テキスト | バイナリ | バイト数 |
|---|---|---|
| A | 01000001 | 1 |
| a | 01100001 | 1 |
| 0 | 00110000 | 1 |
| スペース | 00100000 | 1 |
| 한 | 11101101 10010101 10011100 | 3 |
| 😀 | 11110000 10011111 10011000 10000000 | 4 |
ASCII の英字は1バイト、アクセント付き文字やギリシャ文字・キリル文字の多くは2バイト、韓国語・日本語・中国語の文字は通常3バイト、絵文字は4バイトです。
ポイント
- デコードするときは8桁のまとまりを保つと、欠けたビットに気づきやすくなります。
- バイナリは2進数で、右から1、2、4、8、16、32、64、128の重みがあります。
- テキストではなく整数を基数間で変換する場合は、基数変換ツールを使ってください。
基準と出典
最終確認 2026年10月27日
よくある質問
なぜ8ビットずつに分けるのですか?
1バイトは8ビットで、UTF-8 は各文字を1〜4バイトで表します。8桁ずつにまとめるとバイトを読み取りやすくなります。
なぜ韓国語の1文字が3つのまとまりになるのですか?
ラテン文字以外はより多くのバイトが必要です。韓国語の音節は3バイト、アクセント付き文字の多くは2バイト、絵文字は4バイトです。
スペースなしでバイナリを貼り付けられますか?
はい。スペース、タブ、改行、アンダースコアは無視されますが、桁数は8の倍数である必要があります。
変換は元に戻せますか?
正しい UTF-8 なら元に戻せます。正しい UTF-8 でないバイトは、文字化けを表示せずに拒否します。