什么是代码点和代码space?

What is a code point and code space?

我正在阅读有关代码点的维基百科文章,但不确定我是否理解正确。

For example, the character encoding scheme ASCII comprises 128 code points in the range 0hex to 7Fhex

那么 0hex 是代码点吗?

在代码 space 上也找不到任何内容。

PS。如果重复,请在评论中 post link,我会删除问题。

一个code point是指特定编码字符集中单个element/character的数字代码,那句话表示ASCII有128种可能的符号(仅其中一部分将是可打印字符)并且每个字符都有一个相关的数字代码,可以是 identified/addressed,代码点

有关替代措辞,请查看 this Joel's post and this summary by Oracle,它也介绍了代码单元的概念 :)

为了给您一个代码点的真实示例,请考虑 unicode 字符 snowman ☃,它的代码点(使用 unicode 语法 U+<code point in hex>)是 U+2603.

这些概念比传统的前 Unicode 概念更抽象。

传统上,"code space" 或多或少与 "character range" 同义。 7 位编码的代码 space 从 0 到 127,8 位编码的代码从 0 到 255,16 位编码的代码从 0 到 65535。Unicode 的代码 space 从 0 到 0x10FFFF ,尽管部分代码 space 未填充。

传统上,"code point" 或多或少等同于 "character code"。 Unicode 从单个 "character code" 映射中抽象出来,以强调一组字形和一组字符代码之间存在更复杂的关系,并且某些代码点(例如连接修饰符)不对单个字形进行编码像这样。从表面上看,U+0020 仍然是与 ASCII SPACE 0x20 相同的字符,但 Unicode 具有更丰富的一组定义明确的属性和关系。

Unicode 必须为这些概念创造新的术语,以免传统术语的扩展含义过载。 "code space" 是一个独特的、定义明确的概念,它与(隐含连续的,可能完全填充的)字符范围不完全相同。 "code point" 是一个独特的、定义明确的概念,它与 "character code" 并不完全相同(它甚至一开始就没有完全明确定义;它有多种模棱两可的解释) .