首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是不寻常的八重奏订单

什么是不寻常的八重奏订单
EN

Stack Overflow用户
提问于 2013-08-29 18:42:52
回答 1查看 415关注 0票数 1

在XML文档和Mozilla通用字符集检测器(UCSD)的不同实现中,出现了一个BOM序列,其中字节顺序或单词顺序都颠倒了,但两者都没有,他们称之为“不寻常的八进制顺序”:

XML文档

代码语言:javascript
复制
F.1 Detection Without External Encoding Information
...
00 00 FF FE     UCS-4, unusual octet order (2143)
FE FF 00 00     UCS-4, unusual octet order (3412)

通用字符集检测器(UCSD)源 (仅举一个例子):

代码语言:javascript
复制
  if (('\xFF' == aBuf[1]) && ('\x00' == aBuf[2]) && ('\x00' == aBuf[3]))
    // FE FF 00 00 UCS-4, unusual octet order BOM (3412)
    mDetectedCharset = "X-ISO-10646-UCS-4-3412";

  else if (('\x00' == aBuf[1]) && ('\xFF' == aBuf[2]) && ('\xFE' == aBuf[3]))
    // 00 00 FF FE UCS-4, unusual octet order BOM (2143)
    mDetectedCharset = "X-ISO-10646-UCS-4-2143";

通用字符集检测器(UCSD)文档

代码语言:javascript
复制
Known character sets
...
X-ISO-10646-UCS-4-2143
X-ISO-10646-UCS-4-3412

是否存在使用这种功能的硬件,是否有这样的编码或ISO标准,是否有支持编码/解码的流行libs?为什么这些序列不像其他无效序列一样被忽略?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-20 01:41:25

ISO 10646和Unicode只包括大端和小端UCS-4/UTF-32,而不是中间端.据我所知,没有任何软件使用这些编码,它们实际上是无关的。那么,为什么XML标准会提到它呢?我不知道,但我想提到它是出于对理论完整性的渴望,而不是对任何实际价值的渴望;同样的可能也适用于字符检测/转换软件,其中包括对它的支持。

历史上,有一些系统使用中端字节顺序;PDP-11使用3412格式存储32位数字。因此,如果您尝试在PDP-11上处理UCS-4/UTF-32,那么UCS-4-3412格式可能是有用的。但在实践中,没有人尝试这样做,因为到Unicode到达时,PDP-11已经超过了鼎盛时期;而且由于PDP-11只是16位机器,所以UCS-4并不是与它们一起使用的最佳Unicode格式。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18518730

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档