Go to main content
Oracle® Solaris 11.3 国際化対応言語環境の利用ガイド

印刷ビューの終了

更新: 2016 年 11 月
 
 

Unicode の概要

Unicode は、コンピュータ処理のためのテキストの表現に使用される汎用の文字エンコーディング規格です。Unicode は、多言語テキストをエンコードする一貫した方法を提供し、国際化対応テキストファイルの交換を容易にします。

多言語テキストをコード化するための規格は ISO/IEC 10646 です。ISO/IEC 10646 および Unicode 規格には、まったく同じ文字およびエンコーディングポイントが含まれていますが、Unicode 規格は文字とその使用法についての追加情報を提供します。

Oracle Solaris 11 は、Unicode 規格バージョン 6.0 および ISO/IEC 10646:2011 をシステムレベルでサポートします。

個々の Unicode 文字は、0 - 1,114,111 の範囲の整数であるコードポイントにマップされます。Unicode コードポイントは、U+nnnn 形式 (nnnn はコードポイントの 16 進数) の表記法を使用して、またはコードポイントを記述するテキスト文字列によって参照されます。たとえば、小文字の「a」は U+0061 またはテキスト文字列「LATIN SMALL LETTER A」によって表すことができます。

コードポイントはさまざまな文字エンコーディングスキームを使用してエンコードできます。Oracle Solaris の Unicode ロケールでは、UTF-8 形式が使用されます。UTF-8 は Unicode の可変長エンコーディング形式であり、ASCII 文字コード値を透過的に保持します (UTF-8 の概要を参照)。

Unicode 規格と ISO/IEC 10646、およびこれらの規格の各種表現形式については、次のソースを参照してください。

UTF-8 の概要

UTF-8 は Unicode の可変長エンコーディング形式です。この形式は Oracle Solaris の Unicode ロケールで使用されます。

この形式の利点は、ASCII エンコーディングスキームと下位互換であり、エンディアンとバイト順序の混乱を避けられることです。Unicode コードポイントは、1 - 4 個の 8 ビットのバイトによって表される UTF-8 です。次の表は、UTF-8 のビット分布を規定し、1 バイト、2 バイト、3 バイト、および 4 バイトのシーケンスに対応する Unicode コードポイントの範囲を示します。

表 7  UTF-8 のビット分布
コードポイントの範囲
コードポイント (2 進)
第 1 バイト
第 2 バイト
第 3 バイト
第 4 バイト
U+0000..U+007F
0xxxxxxx
0xxxxxxx
U+0080..U+07FF
00000yyy yyxxxxxx
110yyyyy
10xxxxxx
U+0800..U+FFFF
zzzzyyyy yyxxxxxx
1110zzzz
10yyyyyy
10xxxxxx
U+010000..U+10FFFF
000uuuuu zzzzyyyy yyxxxxxx
11110uuu
10uuzzzz
10yyyyyy
10xxxxxx

UTF-8 エンコーディング形式の詳細は、次のソースを参照してください。