0

我们可以将UnicodeUTF-32值称为代码点,尽管我认为这也是错误的,因为单个代理本身就是一个代码点。UTF-8 可以称为多字节或多字节。但是UTF-16和呢UCS-2?它们不完全是多字节,因为它们处理 2 个字节,我认为多字更像是一种 MS 命名方案。

什么是更准确的名称来描述UTF-32可以由字节组成的代码点,如 inUTF-8和单词,如 in UTF-16

4

1 回答 1

0

我相信您正在寻找的术语是“代码单元”。

代码点只是可以分配字符集中字符的整数值。

代码单元是在序列中用于表示编码文本的固定宽度整数表示。UTF-8、UTF-16 和 UTF-32 都是编码,分别使用 8、16 和 32 位代码单元。

UTF-32 在这三者中是独一无二的,因为它的代码单元值始终是所表示的 Unicode 数据的代码点值。


'multi-byte' 可以适当地用于参考 UTF-16。(并且 'Unicode' 可以用来指代 UTF-8;微软对该术语的使用在这两个方面都具有误导性。)


单个代理本身就是一个代码点。

Unicode 将 [U+D800-U+DFFF] 范围内的代码点分类为代理项。然而,这些代码点从来没有被这样使用。它们是保留的,不能使用,因为 UTF-16 不能表示此范围内的代码点;为了表示这样的代码点,UTF-16 将使用 [0xD800-0xDFFF] 范围内的代码单元,但是 UTF-16 使用此范围内的代码单元值来表示高于 U+FFFF 的代码点,因此不能使用它们来表示代码[U+D800-U+DFFF] 范围内的点。

于 2013-07-23T14:36:23.150 回答