2008-08-25 [コンピュータ][UNICODE] 世界中の文字コードを、ユニークなコードポイントを使った固定長ビットで表す仕組みにとして、UCS-2とUCS-4がある Unicodeコンソーシアムは、2バイトで世界中の文字コードを表すことを考えていた。 UCS-4はISOが考えていたもので、ISO-10646と言う。2^31=21.5億コードポイント(MSBをオフにするため)を表すことができる 128群x256面x256区x256点=21.5億コードポイント UCS-4の2バイト固定長サブセットをUCS-2と言う。Unicodeコンソーシアムが考えていたものと同じで、2^16=65,536コードポイントしか表わすことができない。 256区x256点=65,536コードポイント UCS-4の0群0面と考えることができ、この面をBMP(Basic Multilingual Plane: 基本多言語面)という。 UCS-2の0xXXYYは、UCS-4の0x0000XXYYになる。 UTF-16は、UCS-2の2つのサロゲート領域を使って、UCS-2のコードポイントに加えて1,024x1,024=1,048,576コードポイントを表すことができるようにしたもの。UTFは、UCS Transformation Formatの略。 1024 x 1024 = 2^8 x 2^8 x 2^4 = 256 x 256 x 16で、UCS-4のBMPの次の0群1面から0群16面までを示す。 UNICODE参照 http://www.unicode.org/Public/UNIDATA/UnicodeData.txt http://www.unicode.org/Public/UNIDATA/Unihan.txt http://www.unicode.org/charts/unihangridindex.html