ASCIIとUnicodeの主な違いは、ASCIIが小文字(a-z)、大文字(A-Z)、数字(0-9)、句読点などの記号を表すのに対し、Unicodeは英語、アラビア語、ギリシャ語などの文字、数学記号、歴史文字、絵文字などASCIIよりも幅広い範囲の文字を表現している点です。
ASCIIとUnicodeは、電子通信における2つの符号化規格です。
コンピュータや通信機器などで文字を表現するために使用されます。
ASCIIは128文字をエンコードしています。
これには英字、0から9までの数字、その他いくつかの記号が含まれます。
一方、Unicodeは、ASCIIよりも多くの文字をカバーしています。
世界のほとんどの書き言葉を表現しています。
Unicodeは、言語の文字、数字、その他多数の記号を符号化します。
簡単に言えば、UnicodeはASCIIのスーパーセットなのです。
ASCIIとは
ASCIIとは、American Standard Code for Information Interchange(情報交換のための米国標準コード)の略です。
数字を使ってテキストを表現します。
数字(1,2,3など)、文字(a,b,cなど)、記号(!)などを文字と呼びます。
テキストがあると、ASCIIは各文字を数字に変換する。
この数字の集合は、コンピュータのメモリに格納するのが容易です。
簡単に言うと、文字に数字を割り当てることをエンコードという。
例えば、大文字の「A」には「65」という数字が割り当てられる。
同様に、65は文字’A’を指す。
同じように、ASCIIでは各文字に番号が振られています。
ASCIIの表には、すべての文字とそれに対応する数字が記載されています。
ASCIIでは、1文字を表現するのに7ビットを使用します。
したがって、最大で128(27)文字を表現することができます。
図1:ASCII表
ASCII文字は、プログラミング、データ変換、テキストファイル、グラフィックアート、電子メールで使用されています。
プログラマーは、ASCIIを使って文字に計算を表すことができます。
小文字と大文字の差は常に32です。
例えば、「a」のASCII値は97で、「A」は65です。
つまり、a – A = 32となります。
したがって、ある文字のASCII値がわかっていれば、それに対応する大文字や小文字のASCII値を求めることができます。
さらに、ASCIIはグラフィックアートにおいて、文字を使って画像を表現するために使われています。
ASCIIの欠点は、128文字しか表現できないことです。
また、数学などの記号はほとんど表現できない。
ユニコードとは
Unicodeは、代替言語です。
Unicode Consortiumによって管理されています。
幅広い種類の文字をカバーしています。
英語、ギリシャ語、アラビア語などの言語の文字、数学記号、絵文字など、さまざまな表現が含まれています。
図2:ユニコード
Unicodeには、3種類のエンコーディングがあります。
UTF-8、UTF-16、UTF-32です。
UTFは1文字に8ビット、UTF-16は1文字に16ビット、UTF-32は1文字に32ビットを使用します。
UTF-8では、最初の128文字がASCII文字となります。
したがって、ASCIIはUTF-8でも有効です。
通常、Unicodeはコンピュータソフトウェアの国際化、ローカライゼーションに使用されます。
この規格は、オペレーティングシステム、XML、.NETフレームワーク、Javaなどのプログラミング言語でも使用されています。
ASCIIとUnicodeの関係
UnicodeはASCIIのスーパーセットです。
ASCIIとUnicodeの違い
定義
ASCIIまたはAmerican Standard Code for Information Interchangeは、電子通信のための文字エンコーディング規格です。
Unicodeは、世界のほとんどの文字体系で表現されるテキストを一貫してエンコード、表現、処理するためのコンピュータ業界標準です。
の略です。
ASCIIは、American Standard Code for Information Interchange(情報交換のための米国標準コード)の略です。
UnicodeはUniversal Character Setの略です。
脇役たち
ASCIIは、数字、英字、その他の記号を表現しています。
128文字をサポートしています。
Unicodeは幅広い種類の文字をサポートしています。
ここがASCIIとUnicodeの大きな違いです。
1文字あたりのビット数
さらに、ASCIIは7ビットで1文字を表現しますが、Unicodeはエンコードの種類によって8ビット、16ビット、32ビットで表現します。
必要スペース
Unicode は ASCII よりも多くのスペースを必要とします。
結論
Unicodeは、世界中のほとんどの書き言葉を表しています。
ASCIIは、Unicodeに相当するものがあります。
ASCIIとUnicodeの違いは、ASCIIが小文字(a-z)、大文字(A-Z)、数字(0-9)、句読点などの記号を表すのに対し、Unicodeは英語、アラビア語、ギリシャ語などの文字や数学記号、歴史文字、絵文字などASCIIより幅広い範囲の文字を表していることです。