Kawanet Blog II

アクセスカウンタ

zoom RSS Unicode は計17面、21ビットまで。UTF-8 は4バイトまで。

<<   作成日時 : 2008/11/09 16:28   >>

なるほど(納得、参考になった、ヘー) ブログ気持玉 10 / トラックバック 1 / コメント 0

UTF-8 の仕様を知ったとき、U+0080 以降では1バイト目が C0〜FF、
2バイト目以降が 80〜BF の範囲内になっていて、EUC とかと違って
文字の先頭バイトの位置が確認できる仕様は賢いと思った。
 
その頃の UCS-4 では、1文字31ビットで最大で128群×256面×65,536文字の
収録が想定されていて(または32ビットだったかも…?)、
それをUTF-8 で表すと1文字あたり最大6バイト長まで続く仕様だったけど、
今は Unicode では、第16面(〜U+10FFFF)とまでに確定していたんですね。
 
これに伴い、UTF-8 も1文字あたり最大4バイト長 に減ってた。

通常の日本語文書(BMP範囲内)を扱う場合は3バイト長で足りていたので、
実用的には何の影響もないけど、ちょっと驚いた。

というわけで、現在の仕様では UTF-8 は以下になるらしい。
 
Table 3-6. UTF-8 Bit Distribution より
コードポイントビットパターン1バイト目2バイト目3バイト目4バイト目
U+0000〜U+007F0xxxxxxx0xxxxxxx
U+0080〜U+07FF00000yyy yyxxxxxx110yyyyy10xxxxxx
U+0800〜U+FFFFzzzzyyyy yyxxxxxx1110zzzz10yyyyyy10xxxxxx
U+010000〜U+10FFFF  000uuuuu zzzzyyyy yyxxxxxx  11110uuu10uuzzzz10yyyyyy10xxxxxx

 
2進数でなくて16進数で書くと以下の通り。
 
Table 3-7. Well-Formed UTF-8 Byte Sequences
コードポイント1バイト目2バイト目3バイト目4バイト目
U+0000〜U+007F00〜7F
U+0080〜U+07FFC2〜DF80〜BF
U+0800〜U+0FFFE0A0〜BF80〜BF
U+1000〜U+CFFFE1〜EC80〜BF80〜BF
U+D000〜U+D7FFED80〜9F80〜BF
U+E000〜U+FFFFEE〜EF80〜BF80〜BF
U+010000〜U+03FFFF  F090〜BF80〜BF80〜BF
U+040000〜U+0FFFFF  F1〜F380〜BF80〜BF80〜BF
U+100000〜U+10FFFF  F480〜8F80〜BF80〜BF

 
ちなみに第16面は、第0面(BMP) から数えて17面目にあたる。
17という数字は、なんだか計算機的にはしっくりこない数字だけど、
UTF-16のサロゲートで表現できる範囲が、第1〜16面になるので、
第0面(BMP) と第1〜16面を合わせると、計17面となる。(21ビット弱)
サロゲートの仕様に合わせて、将来 Unicode で使う文字の範囲が決まったのかな?
 
サロゲートペア とは、BMP の範囲のうち high surrogates (D800〜DB7F) と
low surrogates (DC00〜DFFF) のそれぞれ1024文字分のコードポイントの
組み合わせで、1024×1024=20ビット分=16面分を表す仕組み。

テーマ

注目テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ
気持玉数 : 10
なるほど(納得、参考になった、ヘー) なるほど(納得、参考になった、ヘー) なるほど(納得、参考になった、ヘー) なるほど(納得、参考になった、ヘー) なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

トラックバック(1件)

タイトル (本文) ブログ名/日時
unicode 5.0
コンピュータで文字を扱うための共通規格Unicodeの最新動向。 ...続きを見る
天気晴れ - ITと趣味のブログ
2008/11/11 07:19

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
Unicode は計17面、21ビットまで。UTF-8 は4バイトまで。 Kawanet Blog II/BIGLOBEウェブリブログ
文字サイズ:       閉じる