回答
它们不是两个标准。通用字符集(UCS)不是标准,而是标准中定义的内容,即ISO 10646.这不应与诸如UCS-2之类的编码混淆。
很难猜测你实际上是指不同的编码还是不同的标准。但就后者而言,Unicode和ISO 10646最初是两种不同的标准化工作,具有不同的目标和策略。然而,它们在20世纪90年代早期进行了协调,以避免由于两种不同标准而导致的混乱。他们已经协调好,使得代码点确实相同。
他们保持不同,不过,部分原因是因为统一是由行业协会定义的,可以灵活工作,并在规范的东西超出了简单的代码点分配的极大兴趣。 Unicode标准定义了大量的原则和处理规则,而不仅仅是字符。 ISO 10646是可以在ISO及其成员的标准和其他文件中引用的正式标准。
码点是相同的,但有一些差异。 从the Wikipedia entry about the differences between Unicode and ISO 10646 (i.e. UCS):
它们之间的不同之处在于增加了Unicode的是ISO 10646 ISO 10646的范围之外是一个简单的字符映射表,以前的标准,如ISO 8859.相反的延伸规则和规范,统一增加了排序规则,形式规范化和双向算法像希伯来语和阿拉伯语
我认为差异来自鳕鱼的方式e点被编码。 UCS-x使用固定数量的字节来编码一个代码点。例如,UCS-2使用两个字节。但是,UCS-2无法对需要超过2个字节的代码点进行编码。另一方面,UTF使用可变数量的字节进行编码。例如,UTF-8至少使用一个字节(对于ascii字符),但如果字符超出ascii范围,则使用更多字节。
+1链接到* Joel on Software *文章。 – DaveE 2012-01-14 06:36:00
- 1. 为什么我们需要BeginGetResponse和BeginRead?
- 2. 为什么我们需要Bower和Nuget?
- 3. 为什么我们需要ClassMethods和InstanceMethods?
- 4. PHP:为什么我们需要字符串比较功能?
- 5. 为什么我们需要fieldset标签?
- 6. 为什么我们需要RIA?
- 7. 为什么我们需要.htaccess的worpdress?
- 8. 为什么我们需要9补丁?
- 9. 为什么我们需要在JavaScript
- 10. 我们为什么需要纤维
- 11. 为什么我们需要TensorFlow tf.Graph?
- 12. 为什么我们需要ng-click?
- 13. 为什么我们需要`ngDoCheck`
- 14. 为什么我们需要设置SONAR_RUNNER_OPTS?
- 15. 为什么我们需要Anaconda 2.7?
- 16. 为什么我们需要mktemp?
- 17. 为什么我们需要ioc容器
- 18. 为什么我们需要RBAC许可?
- 19. 为什么我们需要scalaz.stream迭代?
- 20. 为什么我们需要Buffer.isBuffer方法?
- 21. 为什么我们需要WCF
- 22. 为什么我们需要addRequestHeader方法?
- 23. 为什么我们需要编写log.isDebugEnabled?
- 24. 什么是仿函数,为什么我们需要它们?
- 25. 装配需要什么?为什么我们使用它们?
- 26. 关于垃圾收集。为什么我们需要调用System.gc();?
- 27. 为什么我需要DJANGO_SETTINGS_MODULE集?
- 28. 虽然我们有Swing,但为什么我们需要JavaFX?
- 29. 为什么我们甚至需要“delete []”运算符?
- 30. 为什么我们要打字?
我没有看到问题和“为什么我们需要的字母”上述评论之间的类比。国际海事组织,这个问题是一个很好的和适当的 – 2012-01-14 06:32:31