gpt4 book ai didi

unicode - 代理对是如何计算的?

转载 作者:行者123 更新时间:2023-12-02 17:16:38 24 4
gpt4 key购买 nike

如果 unicode 使用 17 位代码点,如何从代码点计算代理对?

最佳答案

Unicode 代码点是范围从 0x000000 到 0x10FFFF 的标​​量值。因此它们是 21 位整数,而不是 17 位。

代理对是 UTF-16 形式的一种机制。这将 21 位标量值表示为一个或两个 16 位代码单元。

  • 从 0x000000 到 0x00FFFF 的标​​量值表示为从 0x0000 到 0xFFFF 的单个 16 位代码单元。
  • 从 0x00D800 到 0x00DFFF 的标​​量值不是 Unicode 中的字符,因此它们永远不会出现在 Unicode 字符串中。
  • 从 0x010000 到 0x10FFFF 的标​​量值表示为两个 16 位代码单元。第一个代码单元对标量值的高11位进行编码,作为范围从0xD800-0xDBFF的代码单元。将 0x01-0x10 之间的值编码为四位有点棘手。第二编码单元对标量值的低10位进行编码,作为范围从0xDC00-0xDFFF的编码单元。

Unicode 联盟的常见问题解答 UTF-8, UTF-16, UTF-32 & BOM 中通过示例代码对此进行了详细解释。 。该常见问题解答引用了 Unicode 标准的部分,其中包含更多详细信息。

关于unicode - 代理对是如何计算的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8868432/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com