序号 |
编码代号 |
简介 |
1 |
Unicode |
中文为万国码、统一码、单一码,Unicode的英文全称为Universal Multiple-Octet Coded Character Set,简称UCS或U码,由非营利组织The Unicode Consortium负责运作,目的是消除“万码奔腾”的局面,让世界各国人民远离口口与乱码。 可惜,只是理论上可行,实际上,因各国历史、政治、文化上的差异,加上U码自身效率差的缺陷,想取代各种编码是不可能的,更遗憾的是DEdit使用Unicode编码对中文支持不好,比如,经常犯把“不”显示为“上”这样的低级错误。 |
2
|
UTF-8
|
前面说了,U码有个大毛病,就是在很多场合下应用效率差,因为U码说白了就是把所有字符都罗列在一起,也就是用最笨的“穷举法”去编码,U码在2005年就收集到了10万个字元。 玩过汉化的人都知道有汉化有A码与U码之分,S60三版软件的语言包大多为A码,为啥?因为A码用的字节少,效率高。所以,U码编码虽然兼容性高,编码也容易,但效率不行,怎么办呢?于是就出现了满足各种需要的U码实现形式,即Unicode Translation Format,简写为UTF,也就是说不是原样使用U码编码,而是变通一下,或者你可以理解成使用不同字节重新编制的编码,UTF-8是其中一种,8代表8位,也就是1个字节,因为与A码的兼容性、效率及安全性综合表现最好,所以应用最广。 |
3 |
Win 1251 |
Win就是Windows的简写,Windows是谁家的注册商标?微软的,所以,这是微软搞的编码表,也叫windows字符集。1251是什么呢?这是不同语言编码的编号,1251是斯拉夫语系的编号,什么是斯拉夫语系呢? 斯拉夫语系就是前苏联各国家使用的语言,现在就是俄语、乌克兰语、卢森堡语、白俄罗斯语、保加利亚语、塞尔维亚语、马其顿语等 |
4 |
Dos |
Dos的通常含义是命令行式的操作系统,在编码领域,这是指IBM PC的DOS字符集,而且具体是指IBM编制的最原始的编码表,其编码大致和A码相当 |
5 |
UTF-7 |
和UTF-8一样,也是一种U码实现形式,不过,不是标准的实现形式,出现这个编码,只是为了解决电子邮件早期传输问题而出现的,因为其安全性差,现在已经被UTF-8取代而成为历史 |
6 |
UTF-8 |
怎么又有一个UTF-8 编码呢?其实是UTF-8的变种,准确的名称叫modified UTF-8 ,出现变种是不同编程语言的算法不同的缘故 |
7 |
IMAP UTF-7 |
IMAP 即Internet Message Access Protocol,中文为交互邮件访问协议,UTF-7前面已经提到过,是为了解决邮件传输的编码问题而出现的,而且有好几个版本,IMAP UTF-7是其中一种 |
8 |
Java UTF-8 |
前面提到过,这是专为Java语言设计的变种UTF-8编码,玩过编程的更能理解这个变种出现的原因,说白了,这是Java与C语言对抗的产物 |
9 |
Code Page 1252 |
早期的时候,字符编码不叫字符编码,叫代码表,也就是Code Page,可简写为CP,1252当然是不同代码表的编号喽,到底是哪个语言的编号呢?是西欧拉丁文语系的编号,或者说是欧洲各国常用的字符基础编码,这个编码是微软制定的 |
10 |
ISO-8859-1 |
ISO全称为International Organization for Standardization,也就是国际标准化组织,ISO-8859-1就是ISO制定的关于字符编码的国际标准,而且是编号为8859系列的一个子标准,具体内容和刚才的Code Page 1252差不多,是关于欧洲各国常用字符的编码,这儿只不过经过ISO制定后使其更具体国际代表性 |
11 |
ASCII |
ASCII编码,全称为American Standard Code for Information Interchange,这就是最为经典的A码,由美国标准化组织制定 |
12
|
Little-Endian UNICODE
|
这个编码其实是UTF-16的一种,这里面有一个离奇的故事的,因为Endian这个词来自著名讽刺小说《格列佛游记》记载的小人国内战,这次内战的原因很搞笑,就是在讨论吃鸡蛋时,到底是先吃大头好呢,还是先吃小头好?支持先吃大头的人被称为Big-Endian,支持先吃小头的人被称为Little-Endian,结果,双方争论不休,始终达不成一致意见,最后只好靠战争解决问题。 在IT界也有这样的一对对死对头,以微软与苹果为例,大家注意没有,苹果系统的使用习惯一直都是与微软操作系统对着干的,结果在编码上也是针锋相对,在处理UTF-16编码位元序列时,双方意见不一致,苹果是支持大尾序Big-Endian的一方,也就是从后向前处理;微软呢,是支持小尾序Little-Endian的一方,也就是从前向后处理。 |
13
|
Big-Endian UNICODE |
前面讲过了,不再重复,不过,因为序列的方向问题,又引出一个概念,那就是BOM,英文全称为Byte Order Mark,从其英文原意可以知道,这个BOM就是为了判断方向问题而制定的一个标记符号。 |
14
|
SMS 7-bit
|
SMS是短信息的意思,所以这是短信的特殊编码,记得有人曾说中国移动真黑,限制每条信息发送字数,哈哈,其实这是冤枉中国移动,真正受限制的原因在这儿,是7-bit编码造成的,中国移动虽然财大气粗,但制定短信传输编码,还是不够格的 |
15 |
GB2312 |
很多人看到这个编码,感觉很亲切,呵呵,亲切就对喽,这是中国大陆编制的简体中文编码,中国大陆的国家标准的格式就是GB+标准编号+发布时间+名称,GB来自于“国标”拼音的缩写,“国标”全称为国家标准,2312就是具体的标准编号喽,GB2312是1980年发布的,是中国大陆第一个官方编制的简体中文编码,受当时的客观限制,这个编码集收录的汉字很少,只有6763个,在当时还能凑和着用 |
16 |
BIG5 |
这个大家也应该比较熟悉,这是中国台弯、香港、澳门以及马来西亚的华人使用的繁体字编码 |
17 |
GBK |
前面讲了,GB2312编码虽然解决了简体中文的编码问题,但因为当时的客观原因,GB2312收入的汉字太少,后来电脑普及后,就不够用了,于是就出现了GBK编码,这儿的K就是“扩”的拼音首字母,GBK就是在GB2312基础上扩展的编码,以GBK 1.0版本为例,就收录了21886个字符,包括汉字21003个,不仅囊括了GB2312的所有汉字及非汉字字符,还把BIG5中的全部汉字也一并收入。 |
18 |
GB12345 |
这是什么编码呢?看前面的GB缩写,说明这还是简体中文的编码,其实这是GB2312到GBK过度的产物,从GB2312发展到GBK编码可不是一下子就搞定的,中间有个发展过程,GB12345就是GB2312的第一个扩展字符子集 |
19 |
ISO88592 |
前面讲过了,这是ISO制定的关于字符编码的系列标准即编号为8859系列标准的第2个子标准,第1个子标准适用的是西欧各国语言,那么这第2个标准适用的就是中欧各国语言 |
20 |
ISO88594 |
同上,ISO8859系列编码标准的第4个子标准,适用北欧各国语言 |
21 |
ISO88595 |
同上,ISO8859系列编码标准的第5个子标准,适用斯拉夫语言,也就是前苏联国家使用的语言,现在就是俄语、乌克兰语、卢森堡语、白俄罗斯语、保加利亚语、塞尔维亚语、马其顿语等 |
22 |
ISO88597 |
同上,ISO8859系列编码标准的第7个子标准,适用希腊语 |
23 |
ISO88599 |
同上,ISO8859系列编码标准的第9个子标准,适用土耳其语 |
24 |
windows-1250 |
前面也讲过,这是微软制定的各种语言编码,编号1250的编码供东欧各国使用 |
25 |
windows-1251 |
同上,有人说前面不是介绍过这个编号了嘛,呵呵,这是不同的版本,你要知道因“苏联解体”导致斯拉夫各语言用字也变化不小 |
26 |
windows-1253 |
同上,微软制定的编号为1253的字符编码,适用希腊语 |
27 |
windows-1254 |
同上,微软制定的编号为1254的字符编码,适用土耳其语 |
28 |
windows-1257 |
同上,微软制定的编号为1257的字符编码,适用巴西语 |
29 |
HZ |
HZ,来自于“汉字”拼音的缩写,是新加坡华人编制的一种简化字编码,算是GB2312编码的前身 |
30 |
ISO88593 |
ISO8859系列编码标准的第3个子标准,适用南欧各国语言及世界语 |
31 |
ISO88596 |
ISO8859系列编码标准的第6个子标准,适用阿拉伯语 |
32 |
ISO88598 |
ISO8859系列编码标准的第8个子标准,适用希伯来语,也就是以色列语 |
33 |
ISO885910 |
ISO8859系列编码标准的第10个子标准,适用北日耳曼语 |
34 |
ISO885913 |
ISO8859系列编码标准的第13个子标准,适用波罗的语 |
35 |
ISO885914 |
ISO8859系列编码标准的第14个子标准,适用凯尔特语 |
36 |
ISO885915 |
ISO8859系列编码标准的第15个子标准,适用西欧语言+芬兰语+大写的法语重音字母+欧元符号 |
37 |
windows-1255 |
微软制定的编号为1255的字符编码,适用希伯来语,也就是以色列语 |
38 |
windows-1256 |
微软制定的编号为1256的字符编码,适用阿拉伯语 |
39 |
TIS_620 |
TIS全称为Thai Industrial Standard,也就是说这是泰国自行制定的泰语字符编码 |
40 |
windows-874 |
微软制定的编号为874的字符编码,适用泰语 |
41 |
SmsStrict |
与7-bit一样,是一种更严格更安全的短信息传输编码 |
42 |
windows-1252 |
前面讲过,这就是Code Page 1252编码的另外一个版本,适用西欧各国语言 |
43 |
KOI8-U |
在ISO以及U码出现以前,斯拉夫语系有自己的编码的,其编码代号为KOI-8系列,KOI-8是俄语Код Обмена Информацией, 8 бит的缩写,音译 "Kod Obmena Informatsiey 8 bit",意译“信息交换码,8位元”。 其中KOI8-U编码,就是乌克兰语专用的编码,U就是乌克兰Ukraine的字母
|
44 |
KOI8-R |
同上,属于KOI-8编码系列,是俄语专用的编码,R就是俄罗斯Russia的首字母 |
45 |
UCS2 |
前面说过了,UCS就是U码,2代表使用两个字节编码,两个字节也就是16位,所以UCS2实际上就是UTF-16 |
46 |
windows-1258 |
微软制定的编号为1258的字符编码,适用越南语 |
47 |
CP850 |
在解释Code Page 1252时讲过,CP的英文全称就是Code Page,CP850这个编号是IBM用的编码系列编号,其中850代表西欧各国语言用字的字符编码 |