ASCIIコード表(全128文字)|10進数・16進数・2進数の完全対応表と制御文字の意味

公開日:2026年10月22日 / カテゴリ:IT知識
A = 65 (0x41) / a = 97 (0x61) / 0 = 48 (0x30) / スペース = 32 (0x20) / 改行LF = 10 (0x0A)

ASCII(アスキー:American Standard Code for Information Interchange)は、英数字・記号・制御文字の128文字に0〜127の番号を割り当てた、最も基本的な文字コードです。UTF-8やShift-JISもASCIIの範囲はそのまま互換性を保っているため、プログラミング・通信・データ処理のあらゆる場面で今も使われています。この記事では全128文字を10進数・16進数・2進数で一覧にし、覚えておくと便利な規則性を解説します。

ASCIIコード表(0〜127)

左から「10進数・16進数・2進数・文字」の4列を1組として、0〜31/32〜63/64〜95/96〜127の4ブロックを横に並べています。

10進16進2進文字10進16進2進文字10進16進2進文字10進16進2進文字
00000000000NUL322000100000SP644001000000@966001100000`
10100000001SOH332100100001!654101000001A976101100001a
20200000010STX342200100010"664201000010B986201100010b
30300000011ETX352300100011#674301000011C996301100011c
40400000100EOT362400100100$684401000100D1006401100100d
50500000101ENQ372500100101%694501000101E1016501100101e
60600000110ACK382600100110&704601000110F1026601100110f
70700000111BEL392700100111'714701000111G1036701100111g
80800001000BS402800101000(724801001000H1046801101000h
90900001001HT412900101001)734901001001I1056901101001i
100A00001010LF422A00101010*744A01001010J1066A01101010j
110B00001011VT432B00101011+754B01001011K1076B01101011k
120C00001100FF442C00101100,764C01001100L1086C01101100l
130D00001101CR452D00101101-774D01001101M1096D01101101m
140E00001110SO462E00101110.784E01001110N1106E01101110n
150F00001111SI472F00101111/794F01001111O1116F01101111o
161000010000DLE4830001100000805001010000P1127001110000p
171100010001DC14931001100011815101010001Q1137101110001q
181200010010DC25032001100102825201010010R1147201110010r
191300010011DC35133001100113835301010011S1157301110011s
201400010100DC45234001101004845401010100T1167401110100t
211500010101NAK5335001101015855501010101U1177501110101u
221600010110SYN5436001101106865601010110V1187601110110v
231700010111ETB5537001101117875701010111W1197701110111w
241800011000CAN5638001110008885801011000X1207801111000x
251900011001EM5739001110019895901011001Y1217901111001y
261A00011010SUB583A00111010:905A01011010Z1227A01111010z
271B00011011ESC593B00111011;915B01011011[1237B01111011{
281C00011100FS603C00111100<925C01011100\1247C01111100|
291D00011101GS613D00111101=935D01011101]1257D01111101}
301E00011110RS623E00111110>945E01011110^1267E01111110~
311F00011111US633F00111111?955F01011111_1277F01111111DEL

※SPはスペース(空白)、92の「\」は日本語環境では円記号「¥」として表示されることがあります。

10進数・16進数・2進数を自由に相互変換するなら

進数変換ツールを使ってみる →

覚えておくと便利な3つの規則性

① 大文字と小文字の差は32

A(65)とa(97)のように、大文字と小文字は常に32(0x20)差です。2進数で見ると6ビット目(32の位)が0か1かの違いだけなので、プログラムではこのビットを反転させるだけで大文字・小文字を切り替えられます。

② 数字の文字は48から始まる

「0」は48(0x30)、「9」は57(0x39)です。文字コードから48を引けば数値になるため、'7' - '0' = 7 のような計算がC言語などでよく使われます。

③ 0〜31と127は「制御文字」

画面に表示されない、装置の制御や通信のための文字です。現在でも改行(LF・CR)、タブ(HT)、エスケープ(ESC)、NUL(文字列の終端)は日常的に使われています。

主な制御文字の意味

10進16進略称名称・意味
000NULNull。C言語では文字列の終端を表す
707BELBell。端末でビープ音を鳴らす
808BSBackspace。1文字戻る
909HTHorizontal Tab。タブ(\t)
100ALFLine Feed。改行(\n)。Mac・Linuxの改行コード
130DCRCarriage Return。復帰(\r)。WindowsはCR+LFで改行
271BESCEscape。端末の色指定などエスケープシーケンスの先頭
3220SPSpace。空白(表示可能文字の最初)
1277FDELDelete。削除

ASCIIと他の文字コードの関係

ASCIIは7ビット(0〜127)の規格で、日本語は含まれません。128〜255を使う「拡張ASCII」は規格ではなく、Latin-1やShift-JISの半角カナなど文字コードによって中身が異なります。一方、UTF-8は0〜127の範囲をASCIIと完全に同じにして設計されているため、英数字だけのファイルはASCIIでもUTF-8でも全く同じバイト列になります。日本語などの文字がどう符号化されるかは全角文字は何バイト?で解説しています。

URLエンコードとの関係:URLで使えない文字は「%」+ASCII/UTF-8の16進数で表します。スペースは%20、「&」は%26、「=」は%3D——この数字は上の表の16進数そのものです。

まとめ

ASCIIは0〜127の128文字を定めた文字コードの土台で、A=65、a=97、0=48、スペース=32、改行LF=10は特によく使います。大文字小文字は32差、数字は48始まり、0〜31は制御文字——この3つを押さえれば、文字コードに関する多くの疑問が解けます。任意の値の変換は進数変換、文字列全体のエンコードはURLエンコード・Base64の各ツールをご利用ください。