MCPで接続 →

計算を入力してください

公式

広告

結果

2進数の出力(1文字あたり8ビット)
01001000 01101001
2 characters encoded
連続した2進数 0100100001101001
ASCIIコード(10進数) 72 105
文字数 2

テキストを2進数に変換するツールとは?

このツールは、ASCII(American Standard Code for Information Interchange:情報交換用米国標準コード)規格を使って、普通のテキストを2進数に変換します。キーボード上のすべての文字は、基本ASCIIでは0〜127の数値に対応しています。このツールは、各文字を取り出してそのASCIIコードを調べ、それを2進数(基数2)に変換し、ちょうど8ビット(1バイト)になるように桁を揃えます。出力されるのは、コンピューターが内部で保存・送信しているのとまったく同じ2進数です。

文字からASCII番号、そして8ビットの2進数文字列への流れ
各文字はASCIIコードに対応し、8ビットの2進数値になります。

使い方

入力欄に任意のテキストを入力するか貼り付けて、実行ボタンを押すだけです。結果は3通りの形式で表示されます。8ビットのバイトごとに区切った2進数(もっとも読みやすい形式)、区切りのない連続した2進数、そしてその元になっている10進数のASCIIコードです。ASCIIは国際的なコンピューティング標準なので、このツールは特定の国や地域に依存せず、どこでも共通して使えます。

計算の仕組み

各文字 \(c\) について、まず \(\operatorname{ASCII}(c)\) を求め、それを2進数で表し、8桁になるまで左側に0を補います。全体の処理は次の式で表せます。

$$\text{Binary} = \bigl\Vert_{i=1}^{n}\ \operatorname{pad}_{8}\!\left(\operatorname{bin}\!\left(\operatorname{ASCII}\!\left(\text{Text}_{i}\right)\right)\right)$$

たとえば文字「A」のASCIIコードは65です。65を2進数にすると \(1000001\) となり7桁なので、0を補って \(01000001\) とします。すべての文字のバイトをつなぎ合わせると、完全な2進数文字列ができあがります。

ASCIIコードを2進数に変換し8ビットにパディングしたもの
短い2進数値は先頭にゼロを追加して8ビットすべてを埋めます。

具体例

「Hi」という単語を例にしましょう。「H」= ASCII 72 = \(1001000\)、「i」= ASCII 105 = \(1101001\)。それぞれ8ビットに揃えると \(01001000\) と \(01101001\) になります。スペース区切りの出力は 01001000 01101001、連続した出力は 0100100001101001 です。

ASCII文字からバイナリへの参照テーブル

標準キーボード上のすべての文字は、0から127の範囲のASCII10進数コードにマッピングされ、そのコードは8ビットのバイナリとして格納されます。以下の表は、共通の印字可能文字とそれらの10進数コード、および パディングされた8ビットのバイナリ値をリストしています。例えば、文字Aは10進数65で、バイナリでは01000001です。

文字 10進数(ASCII) 8ビットバイナリ
(スペース) 32 00100000
! 33 00100001
" 34 00100010
# 35 00100011
$ 36 00100100
% 37 00100101
& 38 00100110
' 39 00100111
( 40 00101000
) 41 00101001
* 42 00101010
+ 43 00101011
, 44 00101100
- 45 00101101
. 46 00101110
/ 47 00101111
0 48 00110000
1 49 00110001
2 50 00110010
3 51 00110011
4 52 00110100
5 53 00110101
6 54 00110110
7 55 00110111
8 56 00111000
9 57 00111001
: 58 00111010
; 59 00111011
? 63 00111111
@ 64 01000000
A 65 01000001
B 66 01000010
C 67 01000011
M 77 01001101
Z 90 01011010
a 97 01100001
b 98 01100010
c 99 01100011
m 109 01101101
z 122 01111010

単語全体を検証するには、テキストHi01001000 01101001になります。

テキストをバイナリに手動で変換する方法

テキストをバイナリに変換することは、各文字をその8ビットのASCII表現に変換することを意味します。文字列内のすべての文字について、左から右の順序で、これらの手順に従ってください。

  1. 一度に1文字ずつ取り出します。テキストを左から右に処理し、各文字は独立に変換され、結果は結合されます。
  2. ASCII10進数コードを見つけます。ASCIIテーブルで文字を検索します。例えば、大文字Kは10進数コード75を持ちます。
  3. 2による繰り返し除算により、10進数を2進法に変換します。数値を2で除算し、余りを記録してから、0に到達するまで商で繰り返します。下から上に余りを読み込みます。
    75の場合:75 ÷ 2 = 37 余り 1;37 ÷ 2 = 18 余り 1;18 ÷ 2 = 9 余り 0;9 ÷ 2 = 4 余り 1;4 ÷ 2 = 2 余り 0;2 ÷ 2 = 1 余り 0;1 ÷ 2 = 0 余り 1。余りを上に読み込むと1001011が得られます。
  4. 左に0を埋めて8ビットにします。1バイトは常に8ビットなので、先頭のゼロを追加します:1001011は01001011になります。
  5. バイトを順番に連結します。すべての8ビットグループを結合します。連続した出力の場合はスペースなしで書き込み、読みやすい出力の場合は各バイト間に単一のスペースを挿入します。

実例 — 単語「Hey」:

  • H = 72 = 01001000
  • e = 101 = 01100101
  • y = 121 = 01111001

スペース区切り結果:01001000 01100101 01111001。単一バイトの逆方向確認として、バイナリ01001000は10進数72に変換され、これはHのASCIIコードです。

主要用語の説明

ASCII
American Standard Code for Information Interchange(米国情報交換標準符号)。文字、数字、句読点、制御文字に0から127の範囲の数値コードを割り当てる、文字エンコーディング標準です。
ビット
デジタルデータの最小単位で、0または1のいずれかの単一のバイナリ値を保持します。
バイト
8ビットのグループ。1バイトは256の異なる値(0~255)を表すことができ、これは任意の標準またはExtended ASCIIの文字を保持するのに十分です。
バイナリ(2進法)
0と1の数字のみを使用する数値システム。各位置は2の累乗(1、2、4、8、16、...)を表すので、バイト01000001は64 + 1 = 65に等しくなります。
7ビット対8ビット
元のASCIIはコード0~127をカバーするのに7ビットのみが必要です。現代的なシステムでは、各文字は完全な8ビットバイトに格納され、標準ASCII文字に対して追加の先頭ビットが0に設定されます。
パディング/先頭ゼロ
すべてのバイトが正確に8ビット長になるように、バイナリ数値の前に追加されるゼロ。例えば、コード5は単なる101ではなく00000101になり、すべてのバイトが整列され続けます。
連続出力対スペース区切り出力
連続出力はすべてのバイトを区切り文字なしで結合します(例:0100100001101001)。一方、スペース区切り出力は各バイト間にスペースを挿入します(例:01001000 01101001)。これにより読みやすく、デコードしやすくなります。
10進数コード
ASCIIによって文字に割り当てられた10進法の数値。例えばAの場合は65です。これは文字とその2進形式の間の中間値です。
Extended ASCII(コード128~255)
8番目のビットを使用して別の128文字を追加する拡張。アクセント付き文字やボックス描画シンボルなどが含まれます。これらのエンコーディングはコードページによって異なるため、同じコードがシステム全体で異なる方法で表示される可能性があります。

よくある質問

なぜ1文字あたり8ビットなのですか? 1バイトは8ビットで、標準ASCIIは7ビットに収まります。8ビットに揃えることですべての文字の幅が同じになり、データの保存方法とも一致します。

スペースや記号にも対応していますか? はい。スペースはASCII 32(\(00100000\))で、印字可能なすべての記号にもコードが割り当てられています。

絵文字やアクセント付きの文字はどうなりますか? コード127を超える文字は基本ASCIIの範囲外です。このツールは各文字の数値コードをそのまま使うため、標準的な英文テキストでもっとも正確に動作します。

最終更新: