Unicode 字符编码模型_已编码字符集(CCS)

转载须注明出处:简书@Orca_J35
本文参考资料的列表位于 Unicode 字符编码模型_简介

因为计算机硬件只能识别二进制数据,可抽象字符本身并不包含数值信息,所以导致计算机硬件无法识别抽象字符。为了解决这个问题,我们需要为抽象字符绑定数值信息,也就是在字符和码点间建立起映射关系,Unicode 标准中将这种映射关系称为"已编码字符"。

"已编码字符"在术语表中的正式定义是:抽象字符和码点之间的映射。这听起来有点拗口,也不便于理解,通常我们只需将"已编码字符"理解为与对应码点一同使用的抽象字符。已编码字符集则是已编码字符的集合,其中的每个字符都拥有相应的码点。

另外,在大多数语境中通常会将"已编码字符"简写为:字符集(character set)、charset 或编码集(code set)。

1. 相关术语

1.1 码点

码点 (code point) 是指"已编码字符集"中某个字符的值或位置。一个"已编码字符集"一般可以用一至多张二维表来表示,二维表中行与列交叉的点称之为码点,每个码点分配一个唯一的编号,称之为码点值或码点编号。除开某些特殊区域(比如代理区、专用区)的非字符码点和保留码点,每个码点唯一对应于一个字符。

码点可以是编码空间 (codespace) 中的任意值,对 Unicode 标准而言,可以是 0 ~ 0x10FFFF 中的任意值。Unicode 标准中将码点分为 7 种基础类型:Graphic、Format、Control、Private-Use、Surrogate、Noncharacter、Reserved。

在 Unicode 标准中,码点采用 16 进制书写,并加上前缀 U+ (例如,拉丁字母 A 的码点是 U+0041 )。Unicode 的码点可以分成 17 个代码级别(code plane):

  • 第一个代码级别被称为基本多语言级别(basic multilingual plane - BMP),码点从 U+0000 到 U+FFFF,其中包括经典的 Unicode 代码;

  • 其余的 16 个级别码点从 U+10000 到 U+10FFFF,其中包括一些辅助字符(Supplementary character)

    tips: 可参考 Code point planes and blocks 可获取更详细的解释。

平面和码点区间.jpg

1.1.1 码点和字符的对应关系

有时,为了与其他标准兼容,单个抽象字符可能会对应多个码点,比如 "Å" 拥有两个对应的码点: U+00C5 和 U+212B。

单个抽象字符也可被表示为一个码点序列,比如 "Å" 也可被表示为码点序列:U+0041 U+030A,而不再是被映射到单个码点。

单个字符也可由一系列码点表示.jpg

由此可见抽象字符和码点并非一一对应。

1.2 编码空间

编码空间 (Codespace) :在对抽象字符进行编码的过程中,用于映射抽象字符的非负整数的范围。编码空间中的某个具体值便是码点。在 Unicode 标准中,编码空间的范围是 0x0 ~ 0x10FFFF。

1.3 术语表

以下内容直接翻译自 Unicode 术语表:

  • 已编码字符 (Encoded Character):抽象字符(abstract character)和码点(code point)之间的关联(或映射)[See definition D11 in Section 3.4, Characters and Encoding.]。抽象字符本身没有数值值,但"encoding a character"的步骤会将特定的码点与特定的抽象字符关联。

    • An encoded character is also referred to as a coded character.

    • 虽然"已编码字符"在术语中的正式定义是,抽象字符和码点之间的映射;但非正式地来讲,"已编码字符"可被认为是与为其分配的码点一起使用的抽象字符。

    • 有时,为了与其他标准兼容,单个抽象字符可能会对应多个码点,比如 "Å" 拥有两个对应的码点: U+00C5 和 U+212B。

    • 单个字符也可由一系列码点表示,比如 "Å" 也可被表示为码点序列:U+0041 U+030A,而不再是被映射到单个码点。

    单个字符也可由一系列码点表示.jpg
  • 已编码字符集(coded character set):是一个字符集,其中的每个字符都分配有数值码点,或说每个字符都拥有各自的码点。通常会简写为字符集(character set)、charset、编码集(code set)。A character set in which each character is assigned a numeric code point.

  • Unicode 标量值 (Scalar Value):除开高代理码点(high-surrogate)和低代理码点(low-surrogat )之外的任何 Unicode 码点都是标量值,具体范围是 0x0 ~ 0xD7FF 和 0xE000 ~ 0x10FFFF。代理码点不能通过"编码模式"映射为"编码单元序列",只有标量值可被映射为"编码单元序列"。(See definition D76 in Section 3.9, Unicode Encoding Forms.)

  • 编码空间 (Codespace):(1) 用于对字符进行编码的数值的范围。(2) 对于 Unicode 标准,编码空间的范围是 0x0 ~ 0x10FFFF。(See definition D9 inSection 3.4, Characters and Encoding.)

  • 码点 (code point):(1) Unicode 编码空间(codespace)中的任意值,也就是说可以是 0 ~ 0x10FFFF 中的任意值。(See definition D10 in Section 3.4, Characters and Encoding.) 不是所有码点都会被分配给已编码字符。(2) 指已编码字符集中某个字符的值或位置。
    在 Unicode 标准中,码点采用 16 进制书写,并加上前缀 U+ (例如,拉丁字母 A 的码点是 U+0041 )。Unicode 的码点可以分成 17 个代码级别(code plane):

    • 第一个代码级别被称为基本多语言级别(basic multilingual plane - BMP),码点从 U+0000 到 U+FFFF,其中包括经典的 Unicode 代码;

    • 其余的 16 个级别码点从 U+10000 到 U+10FFFF,其中包括一些辅助字符(Supplementary character)

      tips: 可参考 Code point planes and blocks 可获取更详细的解释,Code point

  • 码点类型 (Code Point Type):Unicode 标准中将码点分为 7 种基础类型:Graphic, Format, Control, Private-Use, Surrogate, Noncharacter, Reserved. (See definition D10a in Section 3.4, Characters and Encoding.)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,402评论 6 499
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,377评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,483评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,165评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,176评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,146评论 1 297
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,032评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,896评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,311评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,536评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,696评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,413评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,008评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,659评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,815评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,698评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,592评论 2 353

推荐阅读更多精彩内容