跳至內容

希字碼

出自希顶维基

希字碼,或 XCC( Charater Code),是希頂社區設計的,用於表示希頂語字音的一套二進制編碼系統。系統從實際的明文字音里抽象出不同元素的邏輯順序,可以用於表示原希希雅標希〇改等希頂方言的字音。

在此之外,除了二進制形式,我們另設計了對應的字符化形式(SXCC,Stringified  Charater Code)與十進制形式(或稱電碼形式,分為標希用希雅用)。

系統說明

編碼格式

為保持與ASCII的兼容性,編碼中每一字節的首位(高位)不包含編碼信息,僅填入1。

碼段分配
b0 5位,聲母 2位,介母 b0 4位,韻母 3位,編碼後綴

如此安排,兩個字節可表示一個希頂音節,即一個token。音節中對應的聲、介、韻採用希頂拼寫中的表層形式,不轉化至音系上的底層形式。特別地,-- 記為 ü-ü-,因其拼寫僅為字面上的簡寫:

聲母
0 4 8 C
80+
90+
A0+
B0+
C0+
D0+
E0+
F0+

包含原希的29個聲母與一個空聲母,其中不包含擴充字母 。右下角兩個空位設計用於擴展或其他符號的兼容。

介母
+0
+1
+2
+3 ü

包含3個介母與一個空介母。其中 ü 用於拼寫原希中的非規則音節(如 彪 ü)和 --

韻母
1 9 11 19
80+
A0+ 
C0+
E0+

包含15個韻母和一個空韻母。其中構成原希中的非規則音節(如 私 )。

對於部首的編碼。即只取聲、介、韻之一,其餘部分填充為空。所以用於排序時部首字母的順序韻母最前、介母稍後、聲母最後。

編碼後綴
編碼 含義 SXCC形式
-1 字音終止
±0 平凡狀態
+1 常態且字音終止 Z!
+2 常態 Z
+3 轉置且字音終止 X!
+4 轉置 X
+5 聲旁、音節連接 -

編碼後綴添加在音節或部首後,Z 和 X 用於處理 轉置 和 常態,! 用於結束一個字音,- 用於連接多音節的聲旁或無法用一碼表示的複雜非規則音節。

容易發現,一個空音節(聲、介、韻皆空)也可添加編碼後綴,這是實用的:有時我們需要同時添加多個編碼後綴,這時較為後者就應添加在序列隨後的空音節上。值得注意的是,編碼後綴獨立出來和合併在前面的音節上是等價的,但儲存時通常需正規化(計算NXCC時尤其需要注意),儘可能合併到一個音節上。(註:在多樹希頂方言中,部首或許也與常態編碼後綴等價。)

對應字音關係

希字碼用於描述希頂語字音,亦實現希雅語為表層呈現(同時對應標希〇改,但不構成雙射)。可支持音譯聲旁嵌套部首多重H整字部首等多種形式。作為希字碼僅需按順序羅列元素與所需的編碼後綴,便於解析、分析、排序。

希字碼到希頂語字音的過程稱解碼(decode),對於不同方言的實現不同。下面是對於希雅語所需的邏輯:

我們應逐token地處理XCC序列,並將結果暫時保存為由每步輸出構成的(雙向均需增加的)字符串列表而非單個字符串。第一個token通常應為一個音節或一個空音節。(如不構成音節或視同一個(非1)音節聲旁,或視為非法序列,更推薦的形式可以是一個空音節後加 - 。)如遇 - 則連接下一token成為多音節聲旁。

我們記方向為 Δ<(direction)>,記反向操作為 -Δ,記前後為 ◅、▻。通常的初始Δ= ◅。遇到一般的部首、Z 時我們的 Δ 不變,僅需在Δ添加對應的部首或 。遇到 X 時Δ:=-Δ,並在Δ的序列上添加 '(如◅) 或 '(如▻)。特別注意,對於單音節聲旁下的序列,第一次出現X對應的 ' 可省略,如後有聲旁則 也可省略。多音節聲旁應在其Δ添加一個 '。

如遇到第二個音節或空音節(僅限含 - 的),則代表進入一個子序列(用於構造整字部首)。我們按照遞歸的方式執行我們的解碼過程,將結果用 "" 包裹,像部首一樣添加在 Δ 上。

反覆進行上述操作,直到序列尾的 !,如序列未閉合則為非法序列或用於檢索查詢的不完整序列。

在這之後我們對完整的字符串列表進行後處理,對相鄰元素看起來成為音節但並非連續的部分添加 ',如原有 ' 則調整為 ''。

完畢。

希頂語字音到希字碼的過程稱編碼(encode),對於不同方言的實現不同。下略。

SXCC

SXCC,Stringified  Charater Code,是XCC的字符化形式。通常為逐token描寫XCC的風貌。對於音節或部首,通常用聊天字母逐個寫出,特例  作 S。對於空音節通常不寫,但如無編碼後綴則記 0。對於編碼後綴如上文記 !、Z!、Z、X!、X、- 。

例如 ' 對應 9c a5 88 85 d0 82 記 tSX pX yZ!,""'' 對應 80 8E 96 8E 9C 89 B8 81 DC 89 9C 80 80 80 記 a- mua- ta s ka t! !。

對於已正規化的XCC,對應的SXCC也可不寫 - 與一部分空格,如 a- mua- ta s ka t! ! 可記為 amuata s ka t!! 或 a-mua-ta s ka t!!。

NXCC

NXCC,Numfied  Charater Code,是XCC的十進制數碼形式,主要用於排序比較和文字編號(也可作為電碼使用)。分為標希用希雅用兩種,前者為十進制浮點數,能描述所有合法XCC;後者為十進制整數,僅描述合法的標希字音。下略。

希雅語

↪ 請查看頁面:希雅語

相關 demo 與解析庫

……