ASCIIとは何か?
インターネットを見たり、文章をパソコンで書いたり、プログラミングをしたり... 現代において、コンピューターで「文字」を扱うことは当たり前になっています。
でも、コンピューターは電気信号で動く機械。「あ」とか「A」といった文字そのものを理解しているわけではありません。では、どうやって私たちはコンピューター上で文字を使えているのでしょうか?
その答えの一つが、今回ご紹介する「ASCII」です。ITに関わる方だけでなく、日常的にパソコンを使う方にとっても、知っておくとコンピューターへの理解が少し深まるかもしれません。
ASCIIって、なんて読むの? 何の略?
「ASCII」は「アスキー」と読みます。これは、"American Standard Code for Information Interchange" の頭文字をとったものです。日本語にすると、「情報交換用米国標準コード」となります。ちょっと長い名前ですね。
その名の通り、元々はアメリカで定められた、コンピューターや通信機器の間で情報をやり取りするための「文字コード」の規格です。
文字コードって何?
文字コードとは、コンピューターが扱う「文字」一つひとつに、固有の「数字(コードポイント)」を割り当てて管理するための決まり事です。
私たちがキーボードで「A」と打つと、コンピューターの内部では、あらかじめ決められたASCIIコード(特定の数字)に変換されます。そして、画面に「A」と表示されるときも、その数字に対応する形で表示されています。
いわば、文字と数字の「対応表」のようなものです。
ASCIIの仕組み:たった128種類の世界
ASCIIコードは、7ビットという単位を使って文字を表します。7ビットで表現できる情報の種類は 種類です。
つまり、ASCIIで表現できる文字は、たった128種類だけなのです。
この128種類の内訳は、主に以下のようになっています。
- アルファベット: 大文字(A~Z)と小文字(a~z)
- 数字: 0~9
- 記号: カンマ(,)、ピリオド(.)、疑問符(?)、アスタリスク(*)など、基本的な記号
- 制御文字: 改行、タブ、スペースなど、文字の表示や通信を制御するための特殊なコード
例えば、ASCIIでは...
- 'A' は 65
- 'a' は 97
- '0' は 48
- スペース は 32
...といったように、それぞれの文字や記号に固有の数字が割り当てられています。
なぜASCIIが重要だったの?
ASCIIが登場する前は、コンピューターメーカーごとに独自の文字の表現方法を使っていました。これでは、異なるメーカーのコンピューターや機器の間で文字データをやり取りすることが非常に困難でした。
そこで、ASCIIという共通の「文字と数字の対応表」ができたことで、コンピューター間の文字情報のやり取りがスムーズに行えるようになり、互換性の向上に大きく貢献しました。
ASCIIは、その後の多くの文字コードの基礎となりました。今、私たちが使っている文字コードの多くも、ASCIIの考え方を受け継いでいます。
ASCIIの限界、そして次の時代へ
ASCIIは非常に画期的な標準でしたが、128種類しか文字を表現できないという大きな限界がありました。これは、英語圏の基本的な文字や記号を表現するには十分でしたが、世界には英語以外の言語がたくさんあります。
日本語のひらがな、カタカナ、漢字。中国語の漢字。韓国語のハングル。ロシア語のキリル文字...。これらは、128種類には全く収まりません。
このASCIIの限界を克服するために、後に「拡張ASCII」と呼ばれる8ビットを使った文字コードや、さらに多くの文字を扱えるように設計された「Unicode」といった文字コードが登場することになります。
まとめ
ASCIIは、コンピューターが文字を扱うための最初の、そして最も基本的な「文字コード」の一つです。たった128種類の文字しか扱えませんが、コンピューターや機器の間での文字情報の互換性を確立し、その後の文字コード体系の発展の礎となりました。
現代では、より多くの文字を扱えるUnicodeが主流となっていますが、ASCIIは今でも多くのシステムやプログラミングにおいて基本的な役割を担っています。
普段何気なく見ているコンピューターの文字の裏には、このような「文字コード」の仕組みがある、ということを知っていただけたら嬉しいです。