文字符号化形式と文字符号化スキーム
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/01/11 02:08 UTC 版)
「文字符号化方式」の記事における「文字符号化形式と文字符号化スキーム」の解説
Unicodeでは、文字符号化スキーム (CES) を、文字符号化形式 (CEF) と、バイト直列化等の2つの段階に分けて標準化している。 符号化文字集合符号化形式(CEF)符号化スキーム(CES)Unicode文字集合 UTF-8 UTF-8 UTF-16 UTF-16BE UTF-16LE UTF-16 UTF-32 UTF-32BE UTF-32LE UTF-32 Unicodeでは、Unicode符号化文字集合のU+0000〜U+10FFFFの各符号位置に、Unicodeスカラ値という非負整数値を対応付けている。CEFは、このUnicodeスカラ値を符号単位列に変換する。UnicodeのCEFには、UTF-8・UTF-16・UTF-32があり、これらが使う符号単位はそれぞれ、符号なし8ビット整数・符号なし16ビット整数・符号なし32ビット整数である。これらの文字符号化形式はプログラムにおける文字の内部表現として実装される。 しかし、情報交換のためファイルの読み書きや通信を行う場合には、符号単位列をバイト列にする必要があり、8ビット以外の符号単位列をバイト列にするには、バイト順序(エンディアン)を決める必要がある。そのためCESでは、CEFに加え、バイト直列化の手続きを決める、つまり、エンディアンを指定するかまたはエンディアンを記述する方法を規格化している。(各CESのバイト直列化の具体的な内容については、UTF-16#符号化スキームを参照) Unicodeで定められたCEFとCESは、表のものがある(ただし、Unicode技術標準でSCSU (UTS 6) が、Unicode技術報告でUTF-EBCDIC (UTR 16) とCESU-8 (UTR 26) が、Unicode技術ノートでBOCU-1 (UTN 6) が、その他、ISO/IEC標準やRFCで、Unicode文字集合を使ったCEFやCESを規格化している)。同じ名称のCEFとCESがあり、これらを区別するときは、「UTF-16符号化形式」「UTF-16符号化スキーム」のように呼ぶ。一般にUTF-16と呼ばれるものは、UTF-16符号化形式に対応する3つのCESの総称である。なお、UTF-8符号化形式とUTF-8符号化スキームは実質的に同じものだが、便宜上、分けている。 Unicode以外でも、原理的にはCEFとCESを区別して論ずることができる。しかし、ほとんどの場合8ビット整数を符号単位とするため、UTF-8の場合と同様に区別する意味は少ない。たとえば、Shift_JISの文字データを扱うプログラムは、8ビット整数を符号単位とするマルチバイト文字の文字データの処理を行っているため、ファイルの読み書きや通信などでバイト直列化処理をあらためて行うことはない。
※この「文字符号化形式と文字符号化スキーム」の解説は、「文字符号化方式」の解説の一部です。
「文字符号化形式と文字符号化スキーム」を含む「文字符号化方式」の記事については、「文字符号化方式」の概要を参照ください。
- 文字符号化形式と文字符号化スキームのページへのリンク