大五码(Big5),又称为大五码或五大码,是通行于台湾、香港地区的一个繁体字编码方案。地区标准号为:CNS11643,也就是人们说的BIG-5码。
一、大五码简介
大五码是使(Big5),用繁体中文社群中最常用的电脑汉字字符集标准,共收录13,060个中文字,其中有二字为重覆编码,Big5属中文内码(中文码分为中文内码及中文交换码两类)。Big5虽普及于中国的台湾、香港与澳门等繁体中文通行区,但长期以来并非当地的国家标准,只是业界标准(de facto
standard)。倚天中文系统、Windows等主要系统的字符集都是以Big5为基准,但厂商又各自增删,衍生成多种不同版本。
2003年,Big5被收录到台湾官方标准的附录当中,取得了较正式的地位。这个最新版本被称为Big5-2003。
VimIM在Vim环境中,可以直接键入十进制或十六进制Big5码。既不需要启动输入法,也不需要码表。
二 、造字功能与结构
Big5码是一套双字节字符集,使用了双八码储存方法,以两个字节来
BIG-5
安放一个字。第一个字节称为“高位字节”,第二个字节称为“低位字节”。“高位字节”使用了0x81-0xFE,“低位字节”使用了0x40-0x7E,及0xA1-0xFE。在Big5的分区中:
0x8140-0xA0FE 保留给使用者自定义字符(造字区)
0xA140-0xA3BF
标点符号、希腊字母及特殊符号,包括在0xA259-0xA261,安放了双音节度量衡单位用字:兙兛兞兝兡兣嗧瓩糎。
0xA3C0-0xA3FE
保留。此区没有开放作造字区用。
0xA440-0xC67E 常用汉字,先按笔划再按部首排序。
值得留意的是,Big5重复地收录了两个相同的字:“兀、兀”(0xA461及0xC94A)、“嗀、嗀”(0xDCD1及0xDDFC)。
三、历史沿革
“五大码”(Big5)是在1984年由台湾13家厂商与台湾地区财团法人信息工业策进会为五大中文套装软件(宏碁、神通、佳佳、零壹、大众)所设计的中文内码,所以就称为Big5中文内码,虽然五大套装软件并没有成功,但Big5码却深远地影响中文电脑内码,直至今日。“五大码”的英文名称“Big5”后来被人按英文字序译回中文,以致现在有“五大码”和“大五码”两个中文名称。
四、存在的问题
1. 由于各厂商及政府推出的Big5延伸,彼此互不兼容,造成乱码问题。
2. 特殊字符的冲码问题
因为低位元字符中包含了编程语言、shell、script
中,字串或命令常会用到的特殊字符,例如0x5C “\”、0x7C “|”等。“\” 在许多用途的字串中是当作转义符号又称为跳脱字符,例如
\n(换行)、\r(归位)、\t(tab)、\\(\本身符号)、\"(引号)等等。而 “|” 在UNIX操作系统中大多当作命令管线的使用,如 "ls -la |
more" 等等。如果在字串中有这些特殊的转义字符,会被程式或直译器解释为特殊用途。但是因为是中文的原因,故无法正确解释为上面所述的行为,因此程式可能会忽略此转义符号或是中断执行。若此,就违反了使用者本来要当成中文字符一部份使用的本意。
这种情况在常用字诸如“功”(0xA55C)、“许”(0xB35C)、“盖”(0xBB5C)、“育”(0xA87C)中时常出现,造成了许多软件无法正确处理以Big5编码的字串或文件。这个问题被戏谑性地人名化,称为“许功盖”或“许盖功”(这三个字都有这种问题)现象。但是额外的困扰是,有些输出功能并不会把“\”当作特殊字符看待,因此常常有些程式或网页就会出现错误地在“许功盖”三个字后面多了个“\”。
3. 私人造字问题。在倚天中文系统,以及后来的Windows
3.1、95及98中,定义了四个私人造字区范围:
0xFA40-0xFEFE
0x8E40-0xA0FE
0x8140-0x8DFE
0xC6A1-0xC8FE
私人造字区的原意,是供使用者加入本来在编码表中缺少的字符,但当每个使用者都在不同的地方加上不同的字符后,当交换资料时,对方便难以知道某一个编码究竟想表达什么字。
4. Big5码由于很多日常用字被视为异体字而未收录。常见的人名用字(如“堃”(台湾当局“总统府”秘书长游锡堃)、“煊”(台湾当局“财政部长”王建煊)、“栢”(歌手张柏芝)、“喆”(歌手陶喆)等),虽被社会广泛使用,却没有收录到Big5之中。在中国港澳台地区的因特网上,不难看到人们把游锡堃、王建煊、陶喆等名字,写成为“游锡方方土”、“王建火宣”和“陶吉吉”等电视上有些外国动画的繁体中文字幕中也会看到像“木坚木”(樫木)这样的字。“邨”与“着”在香港极为常用却为收入到big5码中。
资料来源
百度百科:http://baike.baidu.com/subview/133766/133766.htm
big5码的意思,就是输出繁体字的,打字时打出的字是繁体字。这边显示的可能不是,或者是乱码,但是看的人看到的是繁体字。