紫キャベツ日記
プログラムやその他の話題を適当に。

オリジナルブラウザゲーム

HTML、CSS、Javascriptで作成したオンラインゲームです。
もちろん無料!!インストール不要!!
お気軽にどうぞ。
人気!!

イラストロジック
 

宝島
 

Jewels and Maze
人気!!

Loop Course
 

JShooter

Unicodeについてちゃんと理解していなかったので、調べてみました。
わかったことは以下のとおり。
間違いがあるかもしれないので、鵜呑みにはしないでください。


  • 世界中の文字を定義しようとした規格
  • 当初16bitだったが、文字数が足りなくなり拡張した
  • UnicodeとISO/IEC 10646がある
  • UnicodeとISO/IEC 10646はともに文字コードの定義であり、実装(エンコーディング)は別(UTF-xが実装)
Unicode
  • 0x0000〜0x10FFFFで文字コードが定義されている
  • 16bitで表すことができる文字コードをBMPという
ISO/IEC 10646
  • 0x0000〜0x7FFFFFFFで定義されるが、Unicodeで使用できない領域は使用しないことになったので実質同じ?
  • 16bitで表すことができる文字コードをUCS-2といい、UnicodeのBMPと実質同じ
  • 32bitで表すことができる文字コードをUCS-4という
UTF-8
  • 8bit(1byte)を単位とした可変長コード
  • Unicodeでは最大4byte、ISO/IEC 10646では最大6byte
  • 他の文字コードと区別するためシグネチャが付くことがある
  • インターネットで主流
UTF-16
  • 16bit(2byte)を単位とした可変長コード
  • BMP(UCS-2)を2byteで表し、それ以上はサロゲートペアと組み合わせて4byteで表す。UCS-4すべてを表すことはできない
  • バイトオーダーによりUTF-16BE(ビックエンディアン)とUTF-16LE(リトルエンディアン)がある
  • ファイルの先頭にBOM(リトルエンディアン:0xFF 0xFE、ビックエンディアン:0xFE 0xFF)が付くことがある
  • BOMがない場合はビックエンディアン
  • 一般にUnicodeというとUTF-16を表すことが多い
  • WindowsやMac?で標準的に使われる
  • VisualStudioのwchar_tはUTF-16
  • XML、Javascriptは文字列をUTF-16で扱う
UTF-32
  • 32bit(4byte)を単位とした固定長コード
  • UCS-4をそのまま表すことができるが、必ず1文字あたり4byte必要とする
  • バイトオーダーによりUTF-32BE(ビックエンディアン)とUTF-32LE(リトルエンディアン)がある
  • ファイルの先頭にBOM(リトルエンディアン:0xFF 0xFE 0x00 0x00、ビックエンディアン:0x00 0x00 0xFE 0xFF)が付くことがある
  • あまり使われない
  • GCCのwchar_tはUTF-32

スポンサーリンク

テーマ:プログラミング - ジャンル:コンピュータ

コメント
コメント
コメントの投稿
URL:
本文:
パスワード:
非公開コメント: 管理者にだけ表示を許可する
 
トラックバック
トラックバック URL
トラックバック

プライベートポリシー

当サイトでは、第三者配信による広告サービスを利用しています。このような広告配信事業者は、ユーザーの興味に応じた商品やサービスの広告を表示するため、当サイトや他サイトへのアクセスに関する情報 (氏名、住所、メール アドレス、電話番号は含まれません) を使用することがあります。

copyright © 2009 紫キャベツ日記 all rights reserved.
Powered by FC2ブログ.
FC2ブログ 一戸建て