ASCII(アスキー)とは、コンピュータ上で文字を扱うための基本的な文字コードである。
American Standard Code for Information Interchangeの略であり、アルファベット、数字、記号などを含む128種類の文字を、それぞれ0から127までの数値に対応させている。
ASCIIの歴史
ASCIIは1963年にアメリカ規格協会(ANSI)によって制定された。当時のコンピュータは機種ごとに異なる文字コードを使用しており、情報交換に支障をきたしていた。ASCIIの登場により、異なる機種間でのデータ交換が容易になり、コンピュータの普及を加速させた。
当初、ASCIIは7ビットで表現されており、128種類の文字しか扱えなかった。しかし、その後8ビットに拡張され、256種類の文字を表現できるようになった。この拡張により、様々な言語の文字や記号が追加され、ASCIIは国際的な文字コードとして広く利用されるようになった。
ASCIIのコード表
ASCIIコード表は、ASCIIで定義された128種類の文字と、それぞれのコードポイント(10進数と16進数)を一覧にした表である。コード表は、コンピュータが文字をどのように認識し、処理するかを理解する上で非常に重要である。
ASCIIコード表は、制御文字と印字可能文字の2つの領域に分かれている。
-
制御文字(0~31、127): これらの文字は、画面表示やプリンタ制御など、文字以外の情報を伝えるために使用される。例えば、10は改行(LF)、13はキャリッジリターン(CR)を表す。これらの文字は、通常、画面に表示されることはない。
-
印字可能文字(32~126): これらの文字は、画面に表示したり、印刷したりできる文字である。数字(0~9)、アルファベット(A~Z、a~z)、記号(!、@、#など)、空白文字(スペース)などが含まれる。
以下に、ASCIIコード表を示す。
10進数 | 16進数 | 文字 | 説明 | 10進数 | 16進数 | 文字 | 説明 |
---|---|---|---|---|---|---|---|
0 | 00 | NUL | Null character | 64 | 40 | @ | アットマーク |
1 | 01 | SOH | Start of Header | 65 | 41 | A | 大文字A |
2 | 02 | STX | Start of Text | 66 | 42 | B | 大文字B |
3 | 03 | ETX | End of Text | 67 | 43 | C | 大文字C |
4 | 04 | EOT | End of Transmission | 68 | 44 | D | 大文字D |
5 | 05 | ENQ | Enquiry | 69 | 45 | E | 大文字E |
6 | 06 | ACK | Acknowledge | 70 | 46 | F | 大文字F |
7 | 07 | BEL | Bell | 71 | 47 | G | 大文字G |
8 | 08 | BS | Backspace | 72 | 48 | H | 大文字H |
9 | 09 | HT | Horizontal Tab | 73 | 49 | I | 大文字I |
10 | 0A | LF | Line Feed | 74 | 4A | J | 大文字J |
11 | 0B | VT | Vertical Tab | 75 | 4B | K | 大文字K |
12 | 0C | FF | Form Feed | 76 | 4C | L | 大文字L |
13 | 0D | CR | Carriage Return | 77 | 4D | M | 大文字M |
14 | 0E | SO | Shift Out | 78 | 4E | N | 大文字N |
15 | 0F | SI | Shift In | 79 | 4F | O | 大文字O |
16 | 10 | DLE | Data Link Escape | 80 | 50 | P | 大文字P |
17 | 11 | DC1 | Device Control 1 | 81 | 51 | Q | 大文字Q |
18 | 12 | DC2 | Device Control 2 | 82 | 52 | R | 大文字R |
19 | 13 | DC3 | Device Control 3 | 83 | 53 | S | 大文字S |
20 | 14 | DC4 | Device Control 4 | 84 | 54 | T | 大文字T |
21 | 15 | NAK | Negative Acknowledge | 85 | 55 | U | 大文字U |
22 | 16 | SYN | Synchronous Idle | 86 | 56 | V | 大文字V |
23 | 17 | ETB | End of Transmission Block | 87 | 57 | W | 大文字W |
24 | 18 | CAN | Cancel | 88 | 58 | X | 大文字X |
25 | 19 | EM | End of Medium | 89 | 59 | Y | 大文字Y |
26 | 1A | SUB | Substitute | 90 | 5A | Z | 大文字Z |
27 | 1B | ESC | Escape | 91 | 5B | [ | 左角括弧 |
28 | 1C | FS | File Separator | 92 | 5C | \ | バックスラッシュ |
29 | 1D | GS | Group Separator | 93 | 5D | ] | 右角括弧 |
30 | 1E | RS | Record Separator | 94 | 5E | ^ | アクサンシルコンフレックス |
31 | 1F | US | Unit Separator | 95 | 5F | _ | アンダーバー |
32 | 20 | Space | 96 | 60 | ` | バッククォート | |
33 | 21 | ! | 感嘆符 | 97 | 61 | a | 小文字a |
34 | 22 | “ | 二重引用符(ダブルクォーテーション) | 98 | 62 | b | 小文字b |
35 | 23 | # | シャープ | 99 | 63 | c | 小文字c |
36 | 24 | $ | ドルマーク | 100 | 64 | d | 小文字d |
37 | 25 | % | パーセント | 101 | 65 | e | 小文字e |
38 | 26 | & | アンパサンド | 102 | 66 | f | 小文字f |
39 | 27 | ‘ | シングルクォート | 103 | 67 | g | 小文字g |
40 | 28 | ( | 左括弧 | 104 | 68 | h | 小文字h |
41 | 29 | ) | 右括弧 | 105 | 69 | i | 小文字i |
42 | 2A | * | アスタリスク | 106 | 6A | j | 小文字j |
43 | 2B | + | プラス | 107 | 6B | k | 小文字k |
44 | 2C | , | コンマ | 108 | 6C | l | 小文字l |
45 | 2D | – | ハイフン | 109 | 6D | m | 小文字m |
46 | 2E | . | ピリオド | 110 | 6E | n | 小文字n |
47 | 2F | / | スラ |
ASCIIの利用例
ASCIIは、そのシンプルさと汎用性から、コンピュータの様々な場面で利用されている。以下に、代表的な利用例をいくつか挙げる。
-
テキストファイル: テキストファイルは、ASCIIコードで表現された文字の並びである。メモ帳やテキストエディタで開くことができるファイルは、基本的にASCII形式である。プログラミングのソースコードも、ASCII文字で記述される。
-
ネットワーク通信: インターネットや電子メールなどのネットワーク通信では、ASCIIコードが広く使われている。例えば、WebページのHTMLやHTTPプロトコルは、ASCII文字で記述されている。
-
制御コード: ASCIIコード表には、文字を表示するだけでなく、機器を制御するための制御文字も含まれている。例えば、プリンターへの指示や、通信の開始・終了を示す信号などに使われる。
-
パスワード: パスワードは、セキュリティ上の理由から、ASCII文字で構成されることが多い。数字、アルファベット、記号を組み合わせることで、推測されにくい強力なパスワードを作成できる。
-
URI: URI(Uniform Resource Identifier)は、Webページやファイルなどのリソースを特定するための文字列である。URIは、ASCII文字で構成され、インターネット上のリソースを効率的に管理するために不可欠な存在である。
-
プログラミング言語: 多くのプログラミング言語は、ASCII文字を使用して記述される。変数名、関数名、キーワードなどは、ASCII文字の組み合わせで表現される。
ASCIIは、コンピュータの基本的な文字コードとして、現代のデジタル社会を支える重要な役割を果たしている。ASCIIを理解することは、コンピュータの仕組みや情報技術の基礎を学ぶ上で欠かせない。
まとめ
ASCIIは、コンピュータ上で文字を扱うための基本的な文字コードである。そのシンプルさ、互換性の高さ、基本的な文字の網羅性から、様々な分野で広く利用されている。ASCIIを理解することは、コンピュータの仕組みや情報処理の基礎を学ぶ上で重要である。