†PCで文字を表現するときは、「符号化」と呼ばれる文字とコードの対応付けが必要である。これらをある基準にしたがって集めた表を文字集合と呼ぶ。ちなみに、日本語の文字集合はJIS規格によって定められている。†PCは、文字を文字コード(キャラクタコード)という番号で管理している。汎用コンピュータ用文字コードのデファクトスタンダードである。IBMによって規格化された。「EBCDIC」は「エビシディック」と読む。BCDICと呼ばれる所期の6ビットコードの拡張。IBMのパンチカード用のコードに由来している。この様式のパンチカードは80文字のテキストを保存でき、1928年にIBMによって導入されて以来、50年以上も使われ続けた。8ビットEBCDICコードは高位ニブル(4ビット値)と低位ニブル(4ビット値)で構成されている。低位ニブルは文字の数字パンチに対応するBCDコードである。高位ニブルは文字のゾーンパンチに対応するコードである。数字0〜9に対してはゾーンパンチがない。そのパンチがないことが高位ニブル1111に対応している。†1文字をISOコードにパリティビットを付けた8ビットで表す文字コード。ANSI(米国規格協会)によって規格化された。基本となるASCII(アスキー)文字コード表は、0から127までの番号からなる。例:C言語で次のようにすると、変数chには英数字「A」に相当する文字コードである65が代入される。英数字1文字を7ビットで表す文字コード。ISOによって規格化された。†ISOコードを元に定めた文字コード。JISによって規格化された。文字集合をエスケープシーケンス(「ESC(B」といったコード列)によって切りかえる文字コードである。JISコードは、さらにJIS8単位コードとJIS漢字コードに分類できる。JIS8単位コード英数字とカタカナを8ビットで表す。JIS漢字コード漢字を16ビットで表す。JISコードは、通信を通してデータ転送をするときに使われている。ASCII文字と全角文字をエスケープシーケンスと呼ばれる特別なコードで切り替える。これによりデータが大きくなるというデメリットがあったが、これはシフトJISで解消された。A0」:「あ」という2バイト文字を表す。78」:「Linux」を表す。†JIS8単位コードの未定義部分に漢字コードの上位8ビットを割り当てた文字コード。米マイクロソフト社によって規格化された。JIS漢字コードよりも扱いやすいため、多くのPCで採用されている。2バイト文字の1文字目(8ビット)が1バイトカナ文字のエリアと重ならないように、JISコードを移動(シフト)させたものである。OSなどで利用されている。ASCIIコードで使われていない領域に、半角カナおよび漢字コードの1バイト目を割り当てている。これによって、全角・半角を認識している。漢字などの2バイト文字を扱うことができるように拡張した文字コード。米AT&T社によって規格化された。文字集合の切り替えに8ビット目を利用する。UNIXで利用されている。世界中の主要な文字を一括して扱うことを目指して作られた規格。すべての文字を2バイトで表す。ISOによって規格化された。8で使用されていたり、新しいブラウザなどで使用されていて、徐々に普及している。ASCIIコードでは1文字を1バイト(=8ビット)で表すため、256(=22)種類の文字しか扱えない。欧米ではアルファベットに数字・記号を合わせても100種類程度なので対応できるが、日本語のようにひらがな・カタカナ・漢字まで扱うことはできない。そこで1文字を表すのに2バイト(=16ビット)を用いるUnicodeが使われる。Unicodeならば65,536(=256×256)種類の文字が扱える。実際に2バイトでも文字をすべて表現できないため、似たような漢字は同一の文字とみなすハンユニフィケーションや、2文字で1文字を表すサロゲートペアという方法を用いている。Format)という。UTFにはいくつかの種類がある。JavaではUTF-8が採用されている。†Unicodeのコーディング方法は、次の4つの方法がある。UTF-8128文字分を1バイトで表現する(ASCII文字)。1,920文字を2バイトで表現する(アラビア文字など)。63,488文字を3バイトで表現する(中国語や日本語など)。UCS-2すべての文字を2バイトで表現する。UTF-16UCS-2の拡張。UCS-4すべての文字を4バイトで表現する。日本語対応の要件として次が挙げられる。