【科普】全球首個支持簡體中文的編碼

西元 1981 年是中文編碼元年。這一年內,中華人民共和國國家標準總局在五月頒布了《信息交換用漢字編碼字符集--基本集》「GB2312」;而國民政府(ROC)也早在該年二月頒布了《中文資訊交換碼》(Chinese Character Code for Information Interchange, CCCII)。

  • 一說 CCCII 碼是在三月發表,來源見後文;

  • 我暫時查不到 GB2312 的問世背景,且其和後來問世的五大專案碼(Big5)一樣存在「字不夠用、只能糊弄消費市場」的局限性、所以不將 GB2312 當做本文所要討論的主題。

身為全球首個漢字情資處理專用編碼、首個支持簡體中文的漢字情資處理專用編碼,CCCII 的問世值得一提。國民政府國家發展委員會在其《全字型檔》網站有相關介紹(原文在此,以國民政府的視角論述):

「民國六十八年(西元 1979 年),因美國急需使用電腦處理東亞語文資料,故在加州史坦佛大學召開了一個籌劃東亞圖書館自動化的會議,希望訂定中文交換碼標準作為自動化之根據。 我國那時尚無合適可用的碼,只有日本代表提出他們的國家標準『JIS-C6226』;因此,美方在沒有其他標準的情況下,就有採用日本標準的想法。由於日本漢字的數目和字型和中文的相差甚多,實在不足以代表中國文字,並且此舉也深遠影響到我中華文化在電腦時代的生存問題,所以我國代表和華裔美國東亞圖書館代表都強力反對。經激烈辯論後,暫時否定了日本與美方之提案,同時我方代表亦承諾次年三月亞洲研究學會年會中,提出我們編訂的中文訊交換碼,俾與日本字碼作一比較。 」

「我方代表返國之後,上書政務委員李國鼎及國科會、中美會等單位,集合國內一批文字學家、圖書館學家及電腦學者,組成『國字整理小組』,立即開始整理我國文字,並解決電腦處理中文資訊遇到的技術問題。『國字整理小組』由謝清俊教授主持,張仲陶教授襄輔;其他參與工作者有王振鵠、張鼎鍾、周駿富、潘重規、周何、楊建樵、黃克東等教授。 」

「我國於次屆亞洲學會年會上,提出共 4,808 字之『中文資訊交換碼』;『中文資訊交換碼』的架構為美方接受,但要求擴大編碼字集。『國字整理小組』於七十 年完成第二批,包括 17,032 個正體字、11,517 個異體字(詳七十一年出版之第二冊二版,七十四年出版之第二冊三版);七十六年再發表第三批,包括 20,583 正體字。前後二次除擴編 53,940 個字碼外,並完成 64×64,32×32 機讀字型;此外,為了方便電腦上的文字處理,又編製了『中國文字資料庫』(Chinese Character Database,簡稱CCDB),其中列出每個字屬性如部首、筆畫、讀音以及各種對應和輸入碼。」

雖然上文是以國民政府的視角來論述的,但相信換到中華人民共和國這邊的話、也會持有相同的觀點:「不能讓華人的漢字情資處理標準被外人牽著鼻子走」。這就要求編碼質量本身必須至少與日文 JIS 編碼匹敵(比如對異體、簡體字的快速檢索等功能)、且能夠同時處理中日韓文(因為美方需要的其實是能夠同時處理中日韓情資的編碼)。而 CCCII 確實做到了這點:

https://zh.wikipedia.org/wiki/中文資訊交換碼

「它使用三個位元組來代表一個中文字,並根據ISO 2022規格以特別的94x94x94編碼空間安放字元,最多可收納830,584個。94x94 的一個編碼空間稱為層(Plane),CCCII 共有 94 個,再以 6 個組合成為 1 個面(Layer)。所以,共有 16 個,每個面均含有 6 個層,只有第 16 面僅含有 4 個層(亦即15 * 6 + 4 = 94)。這16個面相疊起來,形成一個向下延伸的三度空間,形成關聯。第1個面放置正體字;第2至第13個面,放置異體字,其中第2面專放簡體字,而日文漢字使用了第13面。這樣的三度空間設計,使檢索某一中文字的異體字變得容易,如:三字的後兩個位元組是一樣的。」

這樣一來,該編碼最終被美方接受、成為處理中日韓資料的正規標準。現今,在美國的很多圖書館的中日韓文檢索系統也都依賴該編碼進行資料處理(因為其它編碼均無法滿足需求)。

但,後來,在香港和台灣的消費電子市場,居然是五大專案碼存活了下來。由資訊應用國字整理小組出版的、由謝清俊、黃克東所著的《國字整理小組十年》講述了這期間內發生的故事:

以下文章摘錄自《國字整理小組十年》第 15-18 頁

四、國內外局勢之發展

(一) 國內中文字碼之發展

國內有識之士早在 1977 年起,就多次提起制訂中文字碼的事情。 可惜當時由於國內沒有標準字形而受阻。 此事在 1978 年、1979 年之國建會及近代工程討論會中,亦曾討論, 甚至有決議作成。然而終究因字形整理的問題而拖延著。至 1980 年, 教育部公布了 4808 個常用字的標準字形後,編字碼的是才有一線希望。

中文資訊交換碼之所以能在 1981 年三月發表,實拜教育部公布標準常用字形之賜。 然而,在當時,除上述之標準字形外,余無標準字形。 於是國字小組只得負擔起後續的工作, 以期能在七十年將 CCCII 擴充到可實用的字數,並能符合國際上日益迫切之需求, 來維護我們的傳統文字。

當 1981 年三月中文資訊交換碼發表之事傳到國內以後, 並未受到應有的重視和獎勵,反而引起了杯葛、謾罵、和各種侮辱的情形, 此誠始料未及

引起這種情況的主要原因是:在 1980 年國建會的建議中,曾建議我國編中文字碼, 而行政院將此案交主計處電子處理資料中心研究。因此,該單位獲知 CCCII 發表後, 赫然震怒。認為「國字小組『破壞政府體制』」「此事應該由他們做才是」。 於是在 1981 年五月,召開會議決定要另做一碼。 當時國字小組有人出席該次會議,曾即席說明編製 CCCII 之原委, 並說明「CCCII 發表時沒有作者,這純是為了國家,為了維護文字和文化先鋒」。 同時表示願和主計處電子處理資料中心合作甚至交給他們繼續未完之工作, 大家戮力一致對外。非常可惜的是此建議並未為主計處電子處理資料中心接受, 反而一意孤行,非另做一碼不可

為協調此爭執,有該年九月間在溪頭開的會議。在溪頭開的會議中, 國字小組代表對編碼的作業有詳細的報告。在當時, 國內對於 ISO 資訊交換的相關標準之瞭解實在貧乏的可憐, 與會人員不明白 ISO-646 及 ISO-2022 是做什麼的, 因此對 CCCII 之編碼技術無法體認當然也就不明白 CCCII 的長處了國字小組之成員雖然全力說明, 然而在主事人以政治手段解決技術問題的作法之下, 以為再編一碼「亦非難事,而且還可以平息爭端」斷然宣布再設計一碼作為解決之道, 由此開啟了中文字碼十年混亂之情,迄今仍然遺禍社會無法解決。

經溪頭會議後,主計處電子處理資料中心邀王金土根據決議所編之碼為 「中文資訊標準碼(王金土碼)」,並於 1981 年發表 (記錄上是二月,而事實上到六月才完稿)。 此碼完全不理會 ISO 之相關標準,獨斷專行,在碼的結構上主觀幼稚, 在文字上則由個人任意挑選。當然,這種碼是不能用的,然而主事者並不相信, 反而行文各單位要求採用經過日本 NEC 及 FACOM 之技術人員在警政署強烈抗議之下, 才明白此碼真不可用,只得偃旗息鼓自行收回。然而其耗費之公帑, 即以印刷而言,上千本二寸厚之巨著就此報廢,更遑論其人力、物力,和時間之投入, 合法之浪費莫以此為甚。

事實上,由此事件之教訓,主事者應該明白溪頭會議之錯誤, 以及編碼是涉及計算機技術與我固有文字學之事,不是無知之輩想得那麼簡單。 若是就此收兵,也就罷了。可嘆的是,在此過程中, 主辦單位應用各報章媒體,造成許多打擊國字小組, 對 CCCII 之技術成就惡意曲解,似是而非的謬論,一意認定他們自己是對的當發現所編的王金土碼不能時,竟惱羞成怒,執意非再做一個碼不可至此情形,已非理性之爭,而是以一己之私,一念之差, 置國家社會利益不顧孤行到底

於是主事者另起一灶,又行設計第二套碼,在 1982 年七月發表, 這碼名為「中文資訊標準交換碼」。然而,此碼並未完全做完, 同年九月又補充附冊。這些碼雖然號稱採用 ISO-646 及 ISO-2022 標準, 然而,又不真正認真執行,所以徒具虛名,且七月發表和九月補充的字碼均不同, (詳情請表一) 。當然此碼依然不能用

雖然又失敗了,可是主事者巧言隱瞞事實,暗地裡再整旗鼓, 又做一碼: 「通用漢字標準交換碼」並於 1983 年十月發表。 經過以前這許多失敗之經驗,又從 CCCII 學到不少技術, 這一次充滿信心竟以國家標準為支柱,以行政命令強行推銷此碼, 此舉已干犯到「國家標準不是強制性質」的原則了。雖然此碼修正了許多過去之缺失, 也越來越神似 CCCII,可是主事者所堅持的:以一萬三千字為限的錯誤決定, 仍然使得此碼窒礙難行許多廠商為應付採購程序上「非要用國家標準」的箝制, 在電腦中安置了此碼,然而實際上又不用。形成了可笑亦復可悲的瞞天過海的情形。 這種情形不知造成了多少電腦資源上的浪費,對政府形象之傷害更是無以言喻。

之後,由於大家心裡明白「此碼不可不用、又不得不用」的情況下,只好再造一碼, 即「五大專案碼(Big5)」之誕生。爾後, 至 1986 年「通用漢字標準交換碼」又更新一次版本,字碼又換一次, 從 1981 至 1986 年之五年中,六次變易,世界上找不出這樣子做的「國家標準」。 不僅這個過程無法統一字碼,為工業界造福,反而造成天下大亂,國內中文碼之亂, 此實為罪魁禍首。

到今天,這個碼除了在個人電腦中可用以外,稍微大一些的系統都不夠用, 它仍然是採購上必要而又無用的一個設備罷了。無論在台電,自來水、瓦斯、電信局、 警政署、海關、外貿會、出版社、報社、財稅... 此碼的字均不夠用, 更不必談到國家級的系統,像戶政、地政、財稅、圖書館等的系統了。

這麼多年來,主持通用中文標準交換碼的人員對中文資訊交換碼(CCCII)之攻擊和打擊不遺餘力, 凡有中文資訊交換碼之廠商竟不敢明言,以免遭排擠對通用中文標準碼以行政命令強制推行, 若任何中文系統無此碼者則禁止公家機構採購在標準法中明白說明國家標準無強制性,然而有關單位竟一意孤行。 在這麼惡劣的環境下,通用碼無法取得使用上之優勢,實在是該碼設計上缺陷累累(見經建會 1988 年九月製版之《中共電腦業之發展及其對我之影響》第173頁), 否則以國家政令之力,豈有中文資訊交換碼活命之空間?

(上表所謂民國七十年乃指西元 1981 年)

如今,萬國碼當道,但在異體字檢索便利度方面仍舊是個問題…特此向大家認識 CCCII。竊以為 CCCII 的沒落當真遺憾,畢竟其也是全球首個支持簡體中文的漢字編碼、就這樣死於體制內的院系爭鬥當中。我真心不明白那群人堅持五年打腫臉硬上到底是在圖個什麼。也嘆惜彼時兩岸並無廣泛交流(不然的話就可以直接使用 CCCII 取代當時局限性頗大的 GB2312 了)。

# EOF.


推薦閱讀:

為什麼要有UTF-8的疑問?
tomcat伺服器8.0版本對於request發出的請求是否默認按照utf-8編碼而不是之前的iso8859-1?
能否詳細介紹一下字元編碼的發展歷史?
」手機複製這幾個字看你多久能刪完」這句話有什麼秘密能讓人刪不完?
Unicode與bytes有何區別?

TAG:汉字 | 编码 | 字符编码 |