热门问题
时间线
聊天
视角

大五码

汉字字符集 来自维基百科,自由的百科全书

Remove ads

大五码(英语:Big5,又称五大项目码五大码)是繁体中文(正体中文)社群最常用的电脑汉字字符集标准,共收录13060个汉字[1]

大五码虽普及于台湾香港澳门等繁体中文区域,但长期以来并非当地的国家/地区标准或官方标准,而只是业界标准倚天中文系统Windows繁体中文版等主要操作系统的字符集都是以大五码为基准,但厂商又各自增加不同的造字与造字区,派生成多种版本。

2003年,大五码收录到CNS11643中文标准交换码的附录当中,获取正式地位。这最新版称为Big5-2003

历史及名称

“大五码”(Big5)是由台湾财团法人信息产业策进会五大中文套装软件设计的中文共通内码,在1983年12月完成公告[2][3],隔年3月,信息产业策进会与台湾13家厂商签定“16位个人电脑套装软件合作开发(BIG-5)项目(五大中文套装软件)”[4],因为此中文内码是为台湾自行制作开发之“五大中文套装软件”所设计的,所以就称为Big5中文内码[5][6][7][8]。五大中文套装软件虽然并没有如预期的取代国外的套装软件,但随着采用大五码的国乔中文系统倚天中文系统先后在台湾市场获得成功,使得大五码深远影响繁体中文电脑内码,直至今日。“五大码”的英文名“Big5”后来被人按英文字序译回中文,以致现在有“五大码”和“大五码”两中文名。

大五码诞生,是因为当时个人电脑没有共通的内码,导致厂商推出的中文应用软件无法推广,并且与IBM 5550王安码等内码,彼此不能兼容;另一方面,台湾当时尚未推出中文编码标准。在这样的时空背景下,为了使台湾早日进入信息时代,共享改用新的中文编码就成为各厂商所采行的项目;同时,这个项目对于以台湾为核心的亚洲繁体汉字圈也产生了久远的影响。

大五码诞生前,研发中文电脑朱邦复认为内码字集应该广纳所有正异体字以顾及户政等实用需求,故在当时的内码会议中,建议希望采用他五万多字的字库。工程师认为虽其技术可行,但是三字节(超过两字节)长度的内码却会造成英文屏幕画面映射成中文画面会发生文字无法对齐的问题,因为当时盛行之倚天中文系统画面以两字节文字宽度映射成一个中文字图样,英文软件中只要以两个英文字宽度去显示一个中文字,画面就不会乱掉,造成中文系统业者偏爱二个字节长度的内码[9];此外以仓颉输入码压缩成的内码没有排序等功能,因此未获采用。1983年有人诬指朱邦复为共产党,其研究成果更不可能获采用。[10]

在大五码诞生后,大部分台湾的电脑软件都使用了大五码,加上后来倚天中文系统的高度普及,使后来的微软Windows 3.x等亦予以采用。虽然后来台湾还有各种想要取代大五码,像是倚天中文系统所推行的倚天码、台北市电脑公会所推动的公会码等,但是Big5字码已沿用多年,在习惯不易改变的情况下,始终无法成为主流字码。而台湾后来发展的中文信息交换码非一般内码系统,是以交换使用为目的,受先天所限,必须使用至少三字节来表示一汉字,普及率远远不及大五码。

在1990年代初期,当中国大陆电邮和转码软件还未普遍之时,在深圳的港商和台商公司亦曾经使用Big5系统,以方便与总部交流文件、以及避免为中国的办公室再写一套不同内码的系统。使用简体中文的社群,最常用的是中国的国标码(GB 2312GB 18030)和GBK

除了台湾外,其他使用繁体汉字的地区,如香港香港增补字符集)、澳门澳门增补字符集),及使用繁体汉字的海外华人,都曾普遍使用大五码做为中文内码及交换码。

Remove ads

相关标准历程

1983年 “通用汉字标准交换码”试用版发行,包括13053字与441符号,分为两字面,先笔画数,后部首序排列;12月推出的大五码,包括13053字与441符号,字集与字序与交换码试用版完全相同,仅字码定义不同。
1984年 3月:台湾资策会与其国内13家厂商签定“五大中文套装软件”开发项目,而“大五码”即是为“五大中文套装软件”所设计之中文内码。
1997年 Big5+扩编计划推出,使用了两万多码位,纳入了Unicode 1.1所有汉字;受Big5+编码限制,Big-5E大五码扩展推出,与1984年版相同,包括13053字与441符号,另于造字区定义3954个较常用的造字。
2003年 Big5-2003推出,收录了所有在1984年大五编码的所有字符,另外再加入了微软代码页950的欧元符号,和大部分倚天延伸字集的用字,并把它放到台湾官方的CNS 11643附录里,正式成为官方标准的一部分。
Remove ads

字节结构

大五码是双字节字符集,以十六进制表示,使用双八码存储方法,以两字节安放一字。第一字节称为“高位字节”,第二字节称为“低位字节”。“高位字节”使用了0x81至0xFE,“低位字节”使用了0x40至0x7E,及0xA1至0xFE。

在大五码的分区中:

更多信息 分区, 用途 ...

值得留意的是,Big5重复收录了两个相同的字:“兀”(0xA461/U+5140及0xC94A/U+FA0C)、“嗀”(0xDCD1/U+55C0及0xDDFC/U+FA0D)。

此外,部分编码映射把符号区的苏州码子“〸”、“〹”、“〺”映射至汉字(分别为U+5341,U+5344和U+5355)[11][12]而非中日韩符号和标点区(分别为U+3038,U+3039和U+303A)[13],在检索系统中常会造成查询不到字。[14]

冲码问题

低比特字符中包含了编程语言shellscript中,字符串或命令常会用到的0x5C“\”、0x7C“|”等特殊字符。“\”在许多用途的字符串中是当作转义符号,例如\n(换行)、\r(归位)、\t(tab)、\\(\本身符号)、\"(引号)等等。而“|”在UNIX操作系统中大多当作命令流水线的使用,如ls -la | more等等。如果在字符串中有这些特殊的转义字符,会被计算机程序解释器解释为特殊用途。但是因为是中文的原因,故无法正确解释为上面所述的行为,因此程序可能会忽略此转义符号或是误当作转义符号而中断执行。若此,就违反了用户本来要当成中文字符一部分使用的本意。[15][16][17][18][19][20]

低比特字符与ASCII重叠的字符为0x40到0x7E,如下︰

@ A-Z [ \ ] ^ _ ` a-z { | } ~

在常用字如“功”(0xA55C)、“許”(0xB35C)、“蓋”(0xBB5C)、“育”(0xA87C)、“會”(0xB77C)、“院”(0xB07C)中时常出现,许多软件无法正确处理以大五编码的字符串或文件。这问题被戏谑性地人名化,称为“許功蓋”或“許蓋功”(这三个字都有这种问题)。

一般的解决方法,是额外增加“\”的字符,因为“\\”会被解释为“\”,所以“成功\因素”这字符串就能无误地被程序当作“成功因素”的字符串来处理。但是额外的困扰是,有些输出功能并不会把“\”当作特殊字符看待,所以有些程序或网页就会常常在“许功盖”这些字后面错误地多显示了“\”。[15]

低字节为“\”(0x5C)的字符:

﹏ 兝 α 么 功 吒 吭 沔 坼 歿 俞 枯 苒 娉 珮 豹 崤 淚 許 廄 琵 跚 愧 稞 鈾 暝 蓋 墦 穀 閱 璞 餐 縷 擺 黠 孀 髏 躡 ふ ж 尐 佢 汻 岤 狖 垥 柦 胐 娖 涂 罡 偅 惝 牾 莍 傜 揊 焮 茻 鄃 幋 滜 綅 赨 塿 槙 箤 踊 嫹 潿 蔌 醆 嬞 獦 螏 餤 燡 螰 駹 礒 鎪 瀙 酀 瀵 騱 酅 贕 鱋 鱭

低字节为“|”(0x7C)的字符:

﹄ └ ㄍ 弋 四 帆 坑 育 尚 泜 咽 洱 迢 徑 砝 院 悴 琍 逖 揉 稅 閏 會 腮 頌 漏 誡 慝 罵 魯 糕 嚐 舉 甕 牘 辮 疊 鸛 ア 𠂊 戉 吜 芎 怙 矹 峗 洀 苶 恝 烡 茦 唰 掤 痎 虖 圌 斮 琰 萆 隇 搉 煟 腶 輋 嫟 漒 翣 銔 憰 獡 蔙 鋧 懁 瞣 褟 鮐 瞲 觲 鴱 聵 鞫 矱 霬 礨 鶘 驂 驏 鼶 鸓

当把有中文字符文件名的文件上传到ftp时,当中包含低字节为0x5C(\)的字符的文件是不能上传到ftp的,而当中包含低字节为0x7C(|)的字符的文件,是可以上传到ftp(只要不包含低字节为0x5C的字符),但是低字节会变成0x5F(_),例如文件名“教育部第四次會議紀錄”会变成“教灶部第北次愷議紀錄”。

Remove ads

与画线字符相冲

大五码字符的首字节会与DOS代码页437画线字符相冲而产生乱码。

例如

┌───────┐
│維基百科│
└───────┘

当中的中文字如以大五码存储,显示时会变成:

┌────────┐
竟 穧坌鮈 
└────────┘

也有替代方法就是用全角划线符号,但较占空间。倚天公司另外推出倚天码解决此问题,但不流行。

私人造字区

倚天中文系统,以及后来的Windows 3.19598中,定义四个私人造字区范围:0xFA40–0xFEFE、0x8E40–0xA0FE、0x8140–0x8DFE、0xC6A1–0xC8FE。

私人造字区的原意,是供用户加入本来在编码表中缺少的字符,但当每个用户都在不同的地方加上不同的字符后,当交换资料时,对方便难以知道某一个编码究竟想表达什么字。

影响

大五码的一万多字只是根据中华民国教育部颁布的《常用国字标准字体表》、《次常用国字标准字体表》等用字汇编而成,并没有考虑社会上流通的人名地名用字、方言用字、化学生物科学等用字,亦没有放入日语平假名片假名字母;很多日常用字因被视为异体字而未收录。自中文电脑流行后,很多人,甚至电视台的字幕、报纸的用字习惯都因此改变。

例如中华民国教育部视“着”为“著”的异体字,故没有收录“着”字。不过“着”字在香港教育标准里是正字,与“著”字分工。又例如台湾选择了“裡、峰、床、群、衛”作为正字,不过香港教育标准的正字则选用“裏、峯、牀、羣、衞”,Big5码的收字问题令香港老师大伤脑筋。

粤语地区使用粤文,可是很多官话中文不使用的粤文汉字,Big5码都没有收录,例如“嘅、喺、咗、嗰、啲、吓、㖭、㗎、啱、㓤、両、乸、冚、冧、唞、唓、嘞、噏、嚟、嚿、噃、孭、掹、揸、揞、揼、聱、搲、摱、攞、攰、梘、燶、瞓、糉、糍、螆、裇、踎、踭、軚、餸、𡃁、𨋢”等字。港澳地区有不少地名,也都需要使用Big5码没收录的字,比如“邨”(香港绝大部分公共屋邨名字,像杏花邨牛头角上邨等)、“埗”(深水埗)、“氹”(氹仔)、“鰂”(鲗鱼涌)、“鱲”(赤鱲角)、“脷”(鸭脷洲)等等,只用Big5码,无法打出这些字。台湾也有闽南语字、客语字等等地方用字面对相同情况,例如“”,台语指制糖所,常见于乡间地名,但Big5码未收此字。

另一个例子是“鱻”字,在海鲜餐厅偶尔会看到,但是Big5码也没有收此字,另外还有尘螨的“蟎”字,因为现代人体质易过敏、环境常有过敏源,此字很常用。

还有,康熙字典中的一些部首用字(如“”、“”、“”、“”、“”、“”、“”等)、姓氏用字“”、常见人名用字(如“堃”(中华民国行政院院长游锡堃)、“煊”(中华民国前监察院院长、前财政部部长王建煊中华人民共和国羽球运动员夏煊泽)、“栢”(歌手张柏芝)、“峯”(歌手吴青峯林峯)、“喆”(歌手陶喆关喆)、“珉”(韩国演员权珉娥、韩国男演员沈昌珉)、“瑈”(前越南总统吴廷琰胞弟吴廷瑈童星林芷瑈)、“瀞”(台北市议会议员黄瀞莹、女演员黄瀞怡、日本埼玉县长瀞町)、“䕒”(女演员张䕒心)、“彣”(台湾游泳运动员林姵彣新加坡男演员姚彣隆、香港空手道运动员陈枷彣)、“羣”(香港名人李曾超群、台湾歌手林育群)、以及“伃”(常见于女子名,如女演员郑倢伃,来自于女官名倢伃,后来改写成女部的“婕妤”让性别变明显,但是Big5码却只收录“倢”字而漏掉了“伃”字)[21][22])、常见公司或机构名用字(例如“綫”(無綫電視)、“滙”(滙豐銀行)、“恒”(恒生銀行)、“碁”(宏碁電腦)等),这些字虽然受中文社会广泛采用,也没有收录到Big5码中。

另外许多日本人姓名中有的字,也没有收录在Big5码之中,如“瑠”(日本棒球选手欧可耶瑠伟、瑠公郭锡瑠、日本AV女优瑠川里菜、日本女艺人波瑠)、“樫”(日本漫画家富㭴义博、日本男性声优㭴井笙人)、“畑”(日本漫画家小畑健、日本警探电视剧角色古畑任三郎)、“坂”(日本作曲家坂本龙一、日本演员坂口健太郎)、“渕”(日本声优渕上舞、日本女配音员渕崎有里子)、“凪”(日本漫画角色三千院凪)等字,都是如此。

另外,许多俗字如「双」、「厦」、「厰」、「厠」、「麽」也没有收录在Big5码中,但是香港仍然普遍使用俗字,很多字的正写(「雙」、「廈」、「廠」、「廁」、「麼」)甚至连很多成年人也不知道。

Big5码的缺字之中,也有不少科学用字,例如化学元素名称也没有收录齐全,包括“”、“”、“”、“”、“”,以及𨧀之后的元素(除“”、“”、“”、“”外)都没有收录,以及有机化学用字如“”、“”、“”、“”等,也都没有收录。

碰到Big5码没收录的字,许多人会以其他字代替。以“坂”字为例,人们经常以“阪”字代替(注意大阪的古称就是“大坂”,见大坂之役),许多业者(例如光荣)在制作相关的历史题材游戏的中文版本时,本应使用古名的“坂”但仍以“阪”字代替,以致现时仍然有不少中文用户误植为“大之阵”[23],还有像“”字,也常被“廓”、“部”代替。其他未收录的地名用字,如“磘”,也被“瑶”、“嗂”代替,另外“滙丰银行”与“恒生银行”虽然分别以“滙”字与“恒”字来注册,不过人们也常常分别以“匯”字与“恆”字代替。

另一种做法系依赖拆字法。在互联网上,经常能见到把游锡堃、王建煊、张栢芝、陶喆等名字,写成为“游锡方方土”(‘方方土’亦因此成为游锡堃的昵称之一)、“王建火宣”、“张木百芝”和“陶吉吉”等。电视上日本动画的中文字幕中也会看到像“木堅”(樫)、“火田”(畑)这样的字。而有口字旁的香港字,许多人会用英文字母“o”代替口部,例如“o既”(嘅)、“o係”(喺)、“o左”(咗)。

Remove ads

Big5未收录字举例

更多信息 未收录的字, 有收录的字 ...
  • “邨、着、綫、强、鬪、裏、峯、牀、羣、衞”在香港极为常用(写法不同于台湾的“村、著、線、強、鬥、裡、峰、床、群、衛”)。而且“邨”和“村”、“着”和“著”在香港有客观的字义分工,不能视为异体字。
Remove ads

Big5延伸

市面上支持大五码的软件有不少会自行在原本编码外添加一些符号及用字。

非官方Big5延伸

倚天Big5延伸

倚天中文系统为与IBM5550码兼容,在大五码添加了以下字符,称为倚天扩展字集

  • 在0xA3C0–0xA3E0,添加了33个控制字符图像[来源请求]
  • 罕用符号区。在0xC6A1–0xC8D3,添加了圆形1–10、括号1–10、小写罗马数字(ⅰ、ⅱ、ⅲ、...、ⅸ、ⅹ)等章节符号、一些部首(⼂、⼃、⼅、⼇、⼌、⼍、⼎、⼓、⼖、⼙、⼛、⼢、⼧、⼮、⼳、⼴、⼵、⼹、⼺、⽁、⽆、⽧、⽨、⾡、⾪)及笔画结构(㇏、𠃌、乚、𠂊、刂、䒑、龰、冈、龱、𧘇)、日语中的平假名片假名和常用符号,以及俄语使用的西里尔字母,此外还有行列40输入法使用的键名。
  • 在0xF9D6–0xF9FE,添加了7个倚天扩展字(“碁”、“銹”、“裏”、“墻”、“恒”、“粧”、“嫺”,这七个字分别为“棋”、“鏽”、“裡”、“牆”、“恆”、“妝”、“嫻”的异体字)和34个制表符号和区块组件
更多信息 +0, +1 ...

这个延伸有时称为Big5-ETEN。由于倚天中文系统是Windows 95推出之前市场占有率最高的中文系统,此延伸是各种非官方延伸当中最重要的一个。不少后续的延伸字集,都会留空倚天Big5延伸已使用的码位,甚至直接吸纳倚天Big5延伸的字符(但位于C8A5至C8CC的行列40输入法键名除外)。

添加了7个倚天扩展字后,理论上,常用率非常高的“裏”字,以及“恒生”、“宏碁”等品牌,可以直接使用这些写法,不必改为原装Big5码中的“裡”、“恆”、“棋”等字。不过因为输入习惯、输入法问题或避免交换文件到其他系统时乱码,不少人依然习惯以“裡”、“恆”、“棋”等字代替“裏”、“恒”、“碁”等字。

在后期版本的倚天中文系统中,更加入了一些图案和简体中文字,但未被广泛接受。

Remove ads

Code Page 950

Windows使用的Code Page 950(引用了IBM Big 5码的编码页号Code Page 950,简称CP950)之中,只添加了上述0xF9D6-0xF9FE的倚天扩展字及表格符号,并没有加入日文假名字母等其他延伸。

Windows ME之中,微软首度在0xA3E1加入了欧元()符号,之后所有Windows版本的Code Page 950也都有这个符号。

中国海字集

中国海字集”是中国海公司所出品的繁体汉字造字档。它本身虽然是一套商品,但中国海公司很少将之单独贩售,往往是与其他软件一同销售。例如:中国海字集就曾经与《汉书》、《轻松输入法》等一同发售。由于它包括了不少社会上常见的用字、日文假名、和字等,加上曾与Office 97中文版一并发售,所以比起其他官方Big5延伸,更被台湾民众所接受。香港部分BBS网络在香港增补字符集未出现之前,一度以中国海字集为标准。

日和字集

“日和字集”乃香港人内木一郎和阿烈开发的TrueType造字档,以兼容香港增补字符集为卖点,增补字集中仍没涵盖的日语假名日本汉字日本国字,有细明体、标楷体、中黑体等配合Windows 95、98、NT等操作系统字体的字款,并附有仓颉、速成等输入法作辅助,以及把字集文档转换至日语编码的转码器工具。

Unicode补完项目

“Unicode补完项目”前称“BIG5 Extension”,透过修改Microsoft Windows及Mozilla的编码表,从而用户能在网上传递及交换文字。

有鉴于“中国海字集”的成功,“Unicode补完项目”第二版采用了“中国海字集”原有的造字,再加上“中国海字集”所欠的部分简体中文字及香港粤语用字,建成一个能在Big5及Unicode之间转换的编码表;该计划目前已推出了64位测试版。

官方Big5延伸

中华民国教育部造字档

中华民国教育部有它本身一套造字档,主要给部门内使用,亦用于教育部的网络字典。

中华民国行政院农委会常用中文外字集

中华民国行政院农业委员会曾制订一套有133汉字的造字档,其中有84字是鱼部汉字、7字是鸟部汉字。

Big5+

1997年中华民国行政院研究发展考核委员会成立项目委托中文数字化技术推广基金会(中推会)办理Big5+扩编项目,使用了两万多码位,纳入了Unicode 1.1下所有汉字。由于编码使用到的范围超过原先Big5定义(Big5+使用了高字节0x81-0xFE,低字节0x40–0x7E、0x80–0xFE),无法安装在Microsoft Windows上,现几乎无人使用。

Big-5E

为了使Microsoft Windows用户可以使用造字档,中华民国行政院研考会再度委托中推会推出一个补充字集Big-5E(与Big5+并不兼容),共收3954字。因为Big5+的编码限制,再加上Unicode已渐成气候,除了部分政府单位使用之外,Big-5E并没有被广泛的接受。Mac OS X 10.4及以上支持Big-5E。

Big5-2003

鉴于Big5不是官方标准,中推会接受经济部标准检验局委托,召集台湾国内业者、专家和学者编制一个Big5的对照表,并把它放到台湾官方的CNS 11643附录里,正式成为官方标准的一部分。

在Big5-2003之中,收录了所有在1984年大五编码的所有字符,另外再加入微软代码页950的欧元符号、倚天延伸字集的0xA3C0–0xA3E0、0xC6A1–0xC7F2、0xF9D6–0xF9FE的用字。Big5-2003没有收录行列输入法特殊符号及0xC7F3–0xC875的俄语西里尔字母,理由是以CNS 11643没有这些字符。除此之外,所有倚天延伸全部收录。另外,它试图减少Unicode东亚文字字宽有问题的“模糊”部分,它改变了某些符号的Unicode对应,导致代码页950并不完全是Big5-2003的子集合;另外,0xC6C0–0xC6D7对应到Unicode的康熙字典部首区而非汉字区。

相对于Big5-2003,最早没有加上延伸之Big5则称为Big5-1984。

香港增补字符集

香港增补字符集(Hong Kong Supplementary Character Set,简称HKSCS)是香港政府基于大五码之上扩展的字符集标准,是现时香港的中文信息交换内码标准。香港增补字符集以前称为《政府通用字库》,本来只是香港政府内部统一使用的造字档,有三千多字。但由于香港电脑业界不断要求政府迎合本地需要,提出官方的字符集方案,以便与政府来往文件,于是香港政府便在1995年把这套内部使用的标准公开。到了1999年,此字集增加到四千多字,并改为现名。

此字符集由中文界面咨询委员会管理,仍在不断扩编之中。字符集主要包括香港地名人名用汉字粤语用字(包括粗言秽语在内,这是应警方法庭需要记录口供之用)、异体字、小部分简体字平假名片假名俄语西里尔字母

发展

各厂商及政府推出的大五延伸互不兼容,造成乱码问题。鉴于Unicode能正确处理七万多汉字,近年的操作系统和应用程序(如苹果电脑Mac OS X和以Cocoa API撰写之程序、Microsoft Windows 2000及之后版本、Microsoft Office 2000及之后版本、Mozilla浏览器、Internet Explorer浏览器、Java语言等等),已改用Unicode编码。可惜现时仍有一些旧的软件(如Visual Basic 6、部分TelnetBBS软件),未能支持Unicode编码。

输入方法

参见

参考文献

外部链接

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads