ISO/IEC 10646が規定する 4バイト正規形式のUCS(以下UCS-4)は128×256×256×256=2ギガ個の文字を収録できる空間をもっている. [UCS-4では最上位バイトの最上位ビットは使わないので,最上位バイトだけは128になっている. また,実際にはいくつか文字としない部分も含んでいるため,ピッタリ2ギガではなく,2Gよりわずかに少ない.] 上位バイトから順に,Group(群),Plane(面),Row(区),Cell(点)と呼ぶ.
# | 名前 | 個数 |
---|---|---|
1 | Group(群) | 128 |
2 | Plane(面) | 256 |
3 | Row(区) | 256 |
4 | Cell(点) | 256 |
群00の面00つまり先頭の256×256=65536個の文字を,基本多言語面(Basic Multilingual Plane;BMP)と呼ぶ. BMPの文字群はUCS-2の文字になっており,Unicodeでは2バイトのコードだけであらわせる文字(BMPのすべての文字はサロゲートペアを使わなくても表現できる文字)になっている. また,最初の16面(面00〜面10H)は,UTF-16であらわせる範囲になっている. Unicodeでいうと,サロゲートペアを使うとあらわせる範囲になる.
符号化方式 | 説明 |
---|---|
UCS-2 | BMPだけを指す文字集合を意味する語. Unicodeでは文字集合だけど, ISO 10646ではエンコーディング スキームとしてもUCS-2が定義されていて, UTF-16からサロゲートの仕組みをのぞいたものに(サロゲート領域の値を使用しないように)なっている. |
UTF-16 | 最初の16面(BMP+面01H〜10H)の文字を表せる. 2バイトではBMPだけしか収録できないので, 残りの面01H〜10Hはサロゲートペアを使って表現する. |