Unicode
UnicodeData.txt
世界の文字を全てまとめようと作られた符号化文字集合
Unicodeのはじまり
Unicode/UCSの面の区分
Unicodeの代表的な文字符号化形式がUTF-8、UTF-16など
table:Unicode
. Unicode 16進 10進 UTF-8 UTF-16 UTF-32
1. BMP U+0000 - U+007F 0x00 - 0x7F 0 - 127 1バイト 2* 4*
2.1. BMP U+0080 - U+009F 0x80 - 0x9F 128 - 159 2 2 4
2.2. BMP U+00A0 - U+03FF 0xA0 - 0x03FF 160 - 1023 2 2 4
2.3. BMP U+0400 - U+07FF 0x0400 - 0x07FF 1024 - 2047 2 2 4
3.1. BMP U+0800 - U+3FFF 0x0800 - 0x3FFF 2048 - 16383 3* 2 4
3.2. BMP U+4000 - U+FFFF 0x4000 - 0xFFFF 16384 - 65535 3* 2 4
4.1. SMP SIP TIP U+10000 - U+3FFFF 0x010000 - 0x03FFFF 65536 - 2621432 4 4 4
4.2. SSP Private Use U+40000 - U+10FFFF 0x040000 - 0x10FFFF 262144 - 11141112 4 4 4
大まかな分類
1. U+0000からU+007F
ASCII互換
UTF-16は16ビットなのでASCIIと同じ文字でも先頭に00がつくため、完全に同じではない
1バイト目のみ互換性があるという表現?
基本ラテン文字(ASCII互換) Basic Latin
U+0041(A)
2. U+0080 - U+07FF
U+0080からU+00FFまではISO/IEC 8859-1互換
拡張文字やギリシア文字、キリル文字、ヘブライ文字、アラビア文字、シリア文字
U+03B3(γ / ガンマ)
U+03A9(Ω / オメガ)
3. U+0800 - U+FFFF
ひらがなやカタカナ、半角カタカナ、一部の漢字(CJK統合漢字(20992文字範囲))などはここ
U+5409(吉)
U+611B(愛)
U+9AD8(高)
U+9AD9(髙 / はしごだか)
U+D800からU+DFFFはサロゲート領域
U+D800からU+DBFFは上位サロゲート
U+DC00からU+DFFFは下位サロゲート
U+FF00からU+FFEFは全角・半角系用文字
U+FF21(A / 全角のエー)
U+FF71(ア / 半角のア)
4. U+10000 - U+10FFFF
顔文字、絵文字、拡張漢字(CJK統合漢字拡張)などはここ
U+20BB7(𠮷 / つちよし)
U+29E3D(𩸽 / ほっけ)
参考
/gosyujin-books/0057: 改訂新版 プログラマのための文字コード技術入門 00.pdf#628b74342c53d80000657eb1
/gosyujin-books/0117: 改訂新版 プログラマのための文字コード技術入門 00.pdf#628b74352c53d8000014f0a0
今さら聞けない文字コードのはなし 2019年11月19日 水野昭