2進数 変換(文字 ⇔ バイナリ)
文字を入力すると2進数(バイナリ)に変換し、0と1を貼り付けると元の文字に戻します。各文字はUTF-8バイトとしてエンコードされ、8ビットごとにスペースで区切って表示されます。入力内容から変換方向を自動判定しますが、手動で切り替えることもできます。変換はすべてブラウザ内で行われます。
変換結果
- 16進数
- 10進数
文字がバイナリになるしくみ(UTF-8)
コンピュータは文字を数値として保存しています。このツールはUTF-8というエンコード方式を使っており、ほとんどのウェブページで採用されている標準的な方式です。1文字は1〜4バイトに変換され、各バイトは8桁の2進数で表されます。英数字や基本的な記号は1バイト(Aは 01000001、aは 01100001)、ひらがな・カタカナ・漢字は3バイトになります。ASCII文字については、UTF-8のバイト値はASCIIコードと同じです。
バイナリを文字に戻すには
バイトをスペースで区切って貼り付けてください。8桁に満たないグループは左側に0が補われるので、1000001 は 01000001 として処理されます。スペースなしで入力する場合は、全体の桁数が8の倍数である必要があります。バイト列が正しいUTF-8を構成しない場合、読み取れる部分はそのまま表示され、読み取れない部分は「�」として表示され、結果の下に注記が出ます。
16進数と10進数の表示
バイナリの変換結果の下に、同じバイトを16進数(Hex)と10進数(Decimal)でも確認できます。プログラミングやデバッグ、バイト値を調べる学習などに役立てることができます。
よくある質問
「こんにちは」をバイナリに変換すると?
11100011 10000001 10010011 11100011 10000010 10010011 11100011 10000001 10101011 11100011 10000001 10100001 11100011 10000001 10101111 です。ひらがな1文字がUTF-8で3バイトになるため、5文字で15バイト(120ビット)になります。
なぜ1グループが8桁なのですか?
2進数の1桁が1ビットで、8ビットが1バイトです。バイトはコンピュータが文字を記憶するときの基本単位なので、1バイトを8桁の0と1で表します。
ひらがなや漢字が2〜3バイトになるのはなぜですか?
このツールはUTF-8を使っています。UTF-8ではASCII文字(英数字・記号)は1バイトですが、ひらがな・カタカナ・漢字はそれぞれ3バイト必要です。たとえば「あ」は 11100011 10000001 10000010、「字」は 11100101 10101101 10010111 になります。
絵文字はなぜ32桁(4バイト)になるのですか?
多くの絵文字はUTF-8で4バイト必要で、4バイトは32ビットになります。複数の文字を組み合わせて作られた絵文字はさらに多くのバイトを使います。
数字をバイナリに変換できますか?
このツールは文字コードの変換を行うため、数字の「5」は数値の5(2進数で101)ではなく、文字「5」のコード 00110101 に変換されます。数値の基数変換には基数変換ツールをお使いください。
入力したテキストはサーバーに送られますか?
送られません。変換はブラウザ内のUTF-8エンコーダで完結しており、テキストが外部に送信・保存されることはありません。