发信人: wenbobo()
整理人: wenbobo(2002-12-22 01:27:57), 站内信件
|
发信人: bluesea (蓝海), 信区: Internet
标 题: 乱码大全(14)──Unicode(1; 简介)
发信站: BBS 水木清华站 (Tue Apr 14 15:03:06 1998)
乱码大全(14)──Unicode(1; 简介)
“乱码大全”,作者:bluesea,水木清华BBS成员。欢迎在 BBS中转载,帮
助计算机初学者解决使用软件过程中遇到的实际问题。本文原载于水木清华 BBS
的 Internet讨论区。地址是: telnet://bbs.tsinghua.edu.cn ,WWW访问的地
址是 http://bbs.tsinghua.edu.cn 。当下面的条件全部满足时,转载本文可以
不经过作者允许:(1) 转载水木清华 BBS 的信头;(2)不修改原文;(3) 转载仅
限于各种 BBS 和非商业性质的个人网点。 严禁各种形式的抄袭,严禁非作者将
本文或局部用于任何正式出版的刊物。本自然段是全文的一部分。
[email protected]
8 位字符集只能容纳 256 个字符,比如 Latin-1 (ISO 646) 包括了英语、
数字、常用标点和常见的一些欧洲字符。但是它们无法很好地承担在世界范围内
进行信息交换的重任,因为它们没有足够的空间来容纳其他语言上万的字符。这
包括:日语(JIS)、汉语(GB、BIG5)、韩语(KS)、印度语(ISCII)等等。
1993 年,ISO 10646 (Universal Character Set,USC-4) 诞生,它使用了
4 个字节的宽度以容纳足够多的相当可观的空间,但是这个过于肥胖的字符标准
在当时乃至现在都有其不现实的一面,就是会过分侵占存储空间并影响信息传输
的效率。 与此同时,Unicode 组织于约 10 年前以 Universal, Unique 和
Uniform 为主旨也开始开发一个16 位字符标准, 为避免两种 16 位编码的竞争,
1992 年两家组织开始协商,以期折衷寻找共同点,这就是今天的 UCS-2 (BMP,
Basic Multilingual Plane,16bit) 和 Unicode, 但它们仍然是不同的方案。
详细的信息参见:
http://www.unicode.org/
http://www.digital.com/info/DTJB02/DTJB02SC.TXT
在统一方案中集成不同语种的编码并不容易。GB/BIG5/JIS 原本可能在同样
的编码位置是不同的字符,Unicode 对它们的融合和实现必须通过额外的映射表,
这就与英语字符的使用产生了很大差距,对于汉语的使用,Unicode 还有很多没
有解决的问题,Universal, Unique 和 Uniform 的道路还依然漫长。(相关内容
可以参见 http://www.students.uiuc.edu/~c-tsai4/cunicode.html ,本人并不
全部同意其观点)。
无法统计有多少种情况使得汉字成为乱码。数十种编码以及规范的或不规范
的实现形式、不同的 email 客户程序、不同的 SMTP……,Unicode 也不例外。
和 Unicode 有关的汉字乱码有两类:一类是由 Unicode 编码的汉字,它可以通
过一个码表将 Unicode 转换成 GB 或 BIG5;另一类是转换码产生的乱码,由于
Unicode 编码是 16 位编码,因此它和很多只能使用 US-ASCII 编码的应用程序
不兼容,因此产生了对 Unicode 进行各种转换的编码, 以满足不同场合的需要。
具体到产生乱码的编码形式,一般有两种,即: UTF-7 和 UTF-8。
我们将先解决这两种转换码的问题,然后再讨论 Unicode 与 GB、BIG5的转
换,最后讨论 HTML 汉字编码与欧洲字符表示、Unicode 转换码之间的关系。
--
上帝创造猫,是为了让人类体验抚摸老虎的快乐。
※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 202.112.145.96]
|
|