7

几个小时前,我正在阅读交流编程书。当我阅读这本书时,我遇到了这些词,字符编码和 Unicode。然后我开始搜索有关 Unicode 的信息。然后我才知道 Unicode 字符集包含来自每种语言的每个字符,并且UTF-8 ,16,32 可以对unicode字符集中列出的字符进行编码。

但我无法理解它是如何工作的。
unicode 是否依赖于操作系统?
它与软件和程序有什么关系?
UTF-8 是我安装操作系统时安装在我电脑上的软件吗?
还是与硬件有关?
以及计算机如何对事物进行编码?

我发现它非常令人困惑。请详细回答我。我对这些东西不熟悉,所以在你给我答案时请记住这一点。

谢谢你。

4

1 回答 1

8

我在What Every Programmer Absolutely, Positively Needs To Know About Encodings And Character Sets To Work with Text中对此进行了广泛的讨论。这里有一些亮点:

  • 编码很丰富,编码定义了“A”之类的“字符”如何编码为位和字节
  • 大多数编码只为少数选定的字符指定这一点;例如书写英语或捷克语所需的所有(或至少大多数)字符;单字节编码通常支持最多 256 个字符的集合
  • Unicode 是一项大型标准工作,它为使用的每种主要语言的几乎所有字符和符号(数十万个字符)编目并指定了数字 ⟷ 字符关系
  • UTF-8、16 和 32 是如何将这个庞大的数字目录编码为字节的不同子标准,每个子标准都有不同的大小权衡
  • 软件需要专门支持 Unicode 及其 UTF-* 编码,就像它需要支持任何其他类型的专门编码一样;现在大部分工作都是由操作系统完成的,它将支持功能暴露给应用程序
于 2013-07-07T12:42:11.320 回答