文字コード
[Wikipedia|▼Menu]

文字コード(もじコード、: character code)は、文字キャラクタ)を通信コンピュータで扱えるように、一文字一文字に固有の識別番号を与えて区別できるようにした、その対応関係についての規則のこと。
概説

文字コードは、文字や記号やそれに類するものを、通信やコンピュータで扱うために、各文字や記号などに対して番号を与えた対応規則の体系である。通常、通し番号を与え、文字と番号の対応表が作成される。どの文字コードを使うか決まっている状況では、ある数(番号)が与えられるとそれに対応する文字や記号を特定することができる。
歴史

1870年代にはフランスの電信技術者のエミール・ボドーが、5ビットと文字・記号類を対応させるコードを発明し、1876年に、そのコードを用いる電信装置の特許をフランスで取得した(この装置に使われている5ビットのコードがBaudot Code(ボドー・コード)として知られるようになった)。

1963年には、アメリカの情報通信用の文字コードとして7ビットのASCII(アスキー、英: American Standard Code for Information Interchange の略)がアメリカ規格協会(ASA)で制定された。1964年にはIBM社がSystem/360とともにEBCDICという文字コード、4ビットのBCDを8ビットに拡張した文字コードを発表した。
Unicode詳細は「Unicode」を参照

Unicode文字符号化モデル[1]では、文字コードは以下の4段階に分けられる。
抽象文字集合 (ACR)
符号化の対象とする順序のない文字の集合。ただし一般的な「文字」とは異なる場合があり、書記素と混同するべきではない[2]
符号化文字集合(CCS)
抽象文字集合を非負整数に対応させたもの。この非負整数の範囲を符号空間、各値を符号位置といい、抽象文字は対応後、符号化文字となる[3]。抽象文字は複数の符号化文字に対応されることもある(異体字セレクタ[4]。Unicodeでは代用符号位置・非文字符号位置・未割り当て符号位置があるため、すべての符号位置が抽象文字と対応しているわけではない[5]
文字符号化形式(CEF)
符号化文字集合の非負整数を符号単位列に変換する方法。文字符号化形式によってはひとつの符号化文字が複数の符号単位になる場合がある(サロゲートペア)。これを含め、文字により異なる長さの符号単位列となる文字符号化形式を可変幅、どの文字を変換しても同じ長さの符号単位列になるものを固定幅という。文字符号化形式はコンピュータ中に実際にデータとして文字を表現することを可能にする。
文字符号化方式(CES)
符号単位列をバイト列に直列化する方法。符号単位が8ビットより大きい場合はエンディアンが関係してくる。

その後、バイト列をgzipなどで圧縮したり、7ビット伝送路に通すためBase64uuencodeBinHexQuoted-printableなどで変換することがあるがこれらは文字コードの範囲外である。
類似の用語
コードセット
この語はたとえば、
ソフトウェアの実装において、任意の文字コードが扱えるよう実装すること(たとえばruby 1.9のStringオブジェクト)を指してコードセット独立(CodeSet Independent, CSI)といったように使われる[6]
キャラクタセット
MIMEではキャラクタセット(英語: charsetまたはcharacter set)という概念が用いられる。言葉通りには「文字集合」であるが、実際に意味しているものは文字コードに近い。この「キャラクタセット」は「オクテットの並びを文字の並びに変換する方式」などと定義されている[7]。MIMEで実現する電子メールメッセージなどの処理を主眼に置いた概念である。インターネット上で用いることのできる「キャラクタセット」の登録と公開はIANAが行っている(「外部リンク」参照)。
文字マップ
Unicode文字符号化モデルでは、文字列をバイト列に変換する4段階の操作を総称して文字マップ(: character map; CM)と呼ぶ[8]
コードページ
IBMマイクロソフトは独自に文字コードに番号(コードページ)を振って管理している。
エンコーディング
XMLにおいては、文字コードの宣言としてencodingという用語を用いている。
外字詳細は「外字」を参照

外字とは表外字(規格表の外の文字)の略であり、ユーザがデザインして用いるユーザ定義文字や、メーカーなどが定義した環境依存文字(いわゆる機種依存文字)もしくはベンダ拡張漢字のことを指す。

外字というユーザが独自に文字を登録できる領域がある文字コードは複数存在する。Unicodeにおいては6,400+131,072文字の「PUA(Private Use Area=私用領域)」があり、Windows-31J(Microsoft Windows Codepage 932)にも1,880文字の外字領域がある。ユーザが独自にフォントを登録した文字(ユーザ定義文字)は、文書の交換時に配慮しない限りは他の環境で読むことができないため、互換性の上で重大な問題を引き起こす場合がある。ベンダ拡張文字の場合は、ユーザが表外字でないことを認識せずに利用してしまうことがあるため、より重大な問題を引き起こす(例として挙げれば、Windows環境(CP932)のローマ数字がMac環境では化けて表示されるなど)。

JIS規格においては、JIS X 0208で定義された文字集合に対してEUC-JPまたはShift_JISによる符号化を行う際、1?94区に対応しない領域(EUC-JPやShift_JISでは94区に94点をかけた8,836を超える文字が定義可能であるため)や、1?94区の範囲内であっても文字が定義されていない箇所(JIS X 0208には、そのような空き領域が複数存在している)に外字を入れる実装が存在した。1997年改正(JIS X 0208:1997)ではShift_JIS符号化およびEUC-JP符号化も規格で規定することにより、空き領域を外字として使用することが原則禁止された。またJIS X 0213:2000では、主要なベンダ外字の文字を規格に入れて94区までの空き領域をなくしたことで、94区までの区間内の外字を扱える箇所をなくし、2面を使用した実装水準4を選択する場合にはShift_JIS-2004符号化の場合、94区外の領域も埋まるため、外字を入れることが可能な領域がなくなった。
文字コードの一覧(一部)
1バイト系文字コード(符号化文字集合)

1バイト系文字コードは、俗に「半角文字」と呼ばれることもある。

US-ASCII(ASCII [ANSI INCITS 4] 対応)

ISO/IEC 646

ISO646-JP


ISO/IEC 8859(ISO/IEC 8859-1 ? ISO/IEC 8859-16)

ISO-8859-1ISO/IEC 8859-1 対応)

ISO-8859-5(ISO/IEC 8859-5 対応)

ISO-8859-6(ISO/IEC 8859-6 対応)

ISO-8859-7(ISO/IEC 8859-7 対応)

ISO-8859-11(ISO/IEC 8859-11 対応)

ISO-8859-15(ISO/IEC 8859-15 対応)


windows-1252(Microsoft Windows Codepage 1252 対応)

macintosh(MacRoman 対応)

KOI8-R

KOI8-U

TIS-620

EBCDIC

JIS X 0201(JIS ローマ字、カタカナ)

2バイト系符号化文字集合

2バイト系文字コードは、俗に「全角文字」と呼ばれることもある。

JIS X 0208 - 日本。(第一・第二水準漢字など)

JIS X 0212(補助漢字など)

JIS X 0213(JIS X 0208 に第三・第四水準漢字などを追加した文字集合。JIS X 0213:2004はJIS2004とも呼ばれる)

GB 2312 - 中国簡体字中国語

GB 18030 - 中国

KPS 9566 - 朝鮮語が使われる北朝鮮

KS X 1001(KS C 5601) - ハングルなどが使われる韓国

Big5 - 繁体字中国語

CNS 11643 - 台湾

文字符号化方式と文字コード(キャラクタセット)

ISO/IEC 2022系(ISO/IEC 2022自体は文字符号化方式というより、そのフレームワークのようなものである)

ISO-2022-JP(.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation.cs-ja1 q,.mw-parser-output .citation.cs-ja2 q{quotes:"「""」""『""』"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free a,.mw-parser-output .citation .cs1-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/6/65/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited a,.mw-parser-output .id-lock-registration a,.mw-parser-output .citation .cs1-lock-limited a,.mw-parser-output .citation .cs1-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/d/d6/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription a,.mw-parser-output .citation .cs1-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/a/aa/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/4/4c/Wikisource-logo.svg")right 0.1em center/12px no-repeat}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:#d33}.mw-parser-output .cs1-visible-error{color:#d33}.mw-parser-output .cs1-maint{display:none;color:#3a3;margin-left:0.3em}.mw-parser-output .cs1-format{font-size:95%}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}RFC 1468、俗に「JISコード」と呼ばれる文字コード。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:70 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef