Unicode了解一下:码位分布

Unicode


Unicode的编码范围为U+0000 ~ U+10FFFF,一共包含 21617=1114112 2 16 ∗ 17 = 1114112 个码位。
整个编码空间划分为17个平面(plane),每个平面包含 216=65536 2 16 = 65536 个码位(codepoint)。
其中0号空间叫做基本多文种平面(Basic Multilingual Plane, BMP),其他平面叫做补充平面(supplementary planes)

平面的概念来源于UTF-16的编码,双字符能编码16个平面 21616=210210=220=1048576 2 16 ∗ 16 = 2 10 ∗ 2 10 = 2 20 = 1048576 个码位,加上单字符BMP平面,一共17个平面。详细我们会在UTF-16的章节进行说明。

各平面的分布如下:

Plane 范围 名称
Plane 0 U+0000 ~ U+FFFF 基本多文种平面(Basic Multilingual Plane, BMP)
Plane 1 U+10000 ~ U+1FFFF 多文种补充平面(Supplementary Multilingual Plane, SMP)
Plane 2 U+20000 ~ U+2FFFF 表意文字补充平面(Supplementary Ideographic Plane, SIP)
Plane 3 U+30000 ~ U+3FFFF 表意文字第三平面(Tertiary Ideographic Plane, TIP).
Plane 4 ~ 13 U+40000 ~ U+4FFFF 未使用(unassigned)
Plane 14 U+E0000 ~ U+EFFFF 特别用途补充平面(Supplementary Special-purpose Plane, SSP)
Plane 15 ~ 16 U+F0000 ~ U+10FFFF 保留作为私人使用区(Private Use Area, PUA)

各平面作用

Plane 0
第0平面,BMP包含了几乎所有现代语言的常用字符和大量的符号。具体分布可以查看 百度百科
# 代理Surrogates U+D800 ~ U+DFFF
除了文字和符号外,在BMP中2048个码位被保留作为代理(Surrogates)
高代理(High Surrogates) U+D800 ~ U+DBFF
低代理(Low Surrogate) U+DC00 ~ U+DFFF
他们在UTF-16对非BMP字符进行编码的时候成对出现,用来对码位超过65536的字符进行编码。
# 变量选择器Variation_Selectors U+FE00 ~ U+FE0F
BMP中包含16个变量选择器。目的是用来指明特定字符的选择类型。如:
VS12(U+FE0E)标明该Emoji是白种人形态
VS13(U+FE0E)标明该Emoji是黄种人形态
VS14(U+FE0E)标明该Emoji是黑种人形态
VS15(U+FE0E)标明该文字是文字
VS16(U+FE0F)标明该文字是Emoji

Unicode了解一下:码位分布_第1张图片

Plane 1
第1平面,多文种补充平面。包含古文字,专用文字,符号和特定领域用的标记。
古文字诸如埃及象形文字,楔形文字等,现代音乐标记,Emoji表情等都属于这个平面的范畴
Plane 2
第2平面,表意文字补充平面。主要对CJK的字符进行补充
Plane 3 ~ Plane13
暂时还没有分配任何字符
Plane 14
特别用途平面,240个(VS17~VS256)补充变量选择器(Variation Selectors Supplement)补充就在这个平面定义
Plane 15 & Plane 16
私用

其他阅读

  • Plane (Unicode) - Wikipedia

你可能感兴趣的:(其他)