CNS vs Big-5

CNS 字面一所定義的 5401 個常用字之中, 與 Big-5 字集中定義的 5401 個常用字相同, 但是更正了幾個 Big-5 的錯誤次序. 這些錯誤在專業工作者之間可能是熟知的. 四項錯誤源自筆畫的誤算 (耄銬薦嚨), 一項源自部首的誤植 (羅). 詳情如下.

  1. 耄 (0xACFE) 應在耆 (0xAFCF) 之後.
  2. 銬 (0xBE52) 應在鉸 (0xBBC7) 之後.
  3. 薦 (0xC2CB) 應在薊 (0xC1AA) 之後.
  4. 羅 (0xC3B9) 應與繳 (0xC3BA) 對調.
  5. 嚨 (0xC456) 應在嚥 (0xC360) 之後.

CNS 字面二所定義的 7650 個次常用字, 基本上也與 Big-5 字集中定義的次常用字相同. 但是, 除了更正了次序之外, 又剔除了兩個字. 我第一次注意到這個情形, 是日本的 Kenichi Handa 博士於九四年六月五日告訴我的. 這兩個字要不就不存在, 要不就重複了. 分別是 (Big-5 碼的) 0xC94A, 看起來像是兀, 已定義於 0xA461 (倉頡輸入碼的一山, 可能會看到兩個兀); 0xDDFC, 看起來與 0xDCD1 的嗀相同 (倉頡輸入碼土口竹弓). 當然, 這種說法頗為可疑. 計算機只認字碼, 它無從知道對應某個字碼的字該怎麼寫. 所以一套字碼的定義, 必須匹配一套標準寫法, 或稱字形表. 我找不到所謂的 Big-5 字集標準字形表. 但是根據從我所看到的幾種不同的採樣, 這兩對碼所造成的點陣字, 看起來的確是相同的. 詳情如下.

  1. 兀 (0xC94A) 剔除.
  2. 刉 (0xC9BE) 應在匜 (0xC96C) 的位置.
  3. 攷 (0xCAF7) 應在旯 (0xC9ED) 的位置.
  4. 筇 (0xD6CC) 應與笻 (0xDADF) 對調. 其實笻是筇的訛字. 筇, 音瓊, 竹名.
  5. 莚 (0xD77A) 應在菃 (0xDBA7) 的位置.
  6. 嗀 (0xDDFC) 剔除.
  7. 0xDE4D 這個位置, 早期的倚天系統內的字形是三點水加素, 但後來改成和 CNS 的字形一致, 是三點水加索. 不過, 我的倚天系統雖改了這個碼所對應的字形, 卻沒有更正它的發音, 仍是唸素, 其實應該唸索.
  8. 錥 (0xEBF1) 應在鋆 (0xE8A3) 的位置.
  9. 徻 (0xECDE) 應在憝 (0xE976) 的位置.
  10. 鎀 (0xEEEB) 應在鎍 (0xF163) 的位置.
  11. 磿 (0xF056) 應在磲 (0xEDAA) 的位置.
  12. 螤 (0xF0CB) 應在螛 (0xEB5B) 的位置.
  13. 鎥 (0xF16B) 應在鏧 (0xF375) 的位置.
  14. 瀪 (0xF268) 應在灀 (0xF466) 的位置.
  15. 舋 (0xF4B5) 應在艤 (0xF2C3) 的位置.
  16. 鐼 (0xF663) 應在鐊 (0xF4FD) 的位置.
  17. 鬮 (0xF9C4) 應在鱴 (0xF977) 的位置.
  18. 爩 (0xF9C6) 應在麤 (0xF9D2) 的位置.

CNS 字面三是由行政院主計處於一九八八年整理出來的 6148 個罕用字和異或體字. 其中有七個字, 和倚天中文系統在標準 Big-5 字集之後又加的七個字相同. 比如說 Acer 的中文名字的第二個字, 是``棋''的或體字, 以及``裡''字的另外一個寫法. 這些字都定義於此. 但我不巧曾在這裡發現一個字形似乎與第二字面中某字相同的字, 只是它們的部首定義不同. 但我忘了作記號, 現在不知道是哪個字了.

倚天中文系統中支援 CNS 標準的第一二個字面 (指令是 ETCTL/C:si1). 他們應用所謂 shifted-CNS 的技術. 就是把原來 <128 的字碼的第一碼或兩個碼都加 128, 以便和 ASCII 碼區隔. IBM 和 SUN 的 UNIX 工作站, 都有一項選購產品, 使其作業系統瞭解中文, 而它們選用 CNS 作內碼. 此外 VAX 也支援 CNS 標準. 我在中興大學看到一個以 CNS 作內碼的網路服務系統.

雖然 Big-5 的編碼系統有如此多的缺失, 又不符合當前的國際標準, 但是它卻是在臺灣的中文傳統字電腦市場上最暢通的一種編碼系統. 不論你如何以劣幣驅良幣之名咒罵它, 還是得承認, 任何想要普遍流傳的中文電子檔案, 必須與 Big-5 相容; 直接相容, 毋須轉碼或特殊處理.

最後, 我建議您選擇閱讀以下幾種相關文件:


Created: Oct 24, 1995
Last Revised: Nov 24, 1996
© Copyright 1995,1996 Wei-Chang Shann

shann@math.ncu.edu.tw