character encoding

概要

文字エンコーディングは、文字・記号・それに類するものを通信やコンピュータで扱うために、各文字や記号などに対して番号を与えた対応規則の体系。日本語では文字コードと文字エンコーディングを混同することが多い。

文字コードとは本来、ある特定の文字に定められた符号(code)のこと。例えばASCIIにおいて、英大文字の「A」の文字コードは0x41。より正確には、ASCIIは7ビットのエンコーディングなので、英大文字「A」の文字コードは1000001となる。つまりASCIIにおいて、ある特定の文字「A」に定められた符号は1000001となる。文字コードとは、エンコーディングごとにそれぞれの文字に対して定められた符号を指す。

UTF-8はUnicodeという統一された文字セットを符号化する方法。

用語

文字(character)
書き言葉における最小の構成要素であり、何らかの意味を持ったものを指す。コンピュータにおける文字は制御文字も含む。文字そのものは抽象的な概念で、具体的にコンピュータでその文字をどのように格納したり、表示するのかとは直接関係ない
文字列(string)
1つまたは複数の文字の並び
文字集合(character set)
文字(character)の集合(set)。英語大文字26個を集めれば、それは英語大文字の文字集合。通常、文字集合には何らかの書き言葉を構成するすべての文字を含める
エンコーディング
何らかのデータを一定の規則に従って変換することを指し、符号化ともいう。ファイルの圧縮や暗号化、画像やビデオの符号化もエンコーディング。文字の表現におけるエンコーディングは文字エンコーディングを意味する。つまり文字の情報をある一定の規則に従って何らかのビット列に変換すること。ASCII, ISO-8859-1, UTF-8, EUC-JP, ISO-2022-JP, Shift_JISなどがある。エンコーディングは文字を一定の規則に従ってビット列に変換すること
文字コード
本来、ある特定の文字に定められた符号(code)のこと。例えばASCIIにおいて、英大文字の「A」の文字コードは0x41。より正確には、ASCIIは7ビットのエンコーディングなので、英大文字「A」の文字コードは1000001となる。つまりASCIIにおいて、ある特定の文字「A」に定められた符号は1000001となる。日本では、文字エンコーディングと文字コードという言葉が混同して使用されることが多い…。文字コードとは、エンコーディングごとにそれぞれの文字に対して定められた符号を指す
CCS(Coded Character Set)
符号化文字の集合。抽象的な文字の集合から整数の集合への1対1対応のマッピング
CES(Character Encoding Scheme)
文字エンコーディング体系。単一もしくは複数の符号化文字の集合CCSから、オクテット列の集合へのマッピング。文字、コード、バイト列との対応関係を定める。CCSの各文字のコードから、それに対応するバイト列への変換方法を定める。例えば1. 文字のコードの上位8バイトに0x80を足したものを1バイト目とする。2.文字のコードの下位8バイトに0x80を足したものを2バイト目とする。という規則で文字のコードからバイト列へと対応させている

Memo

Tasks

Reference

Archives