説明

漢字を含む異なる符号化文字集合への符号変換方法及び符号変換プログラム

【課題】漢字を含むある特定の符号化文字集合から、それとは異なる符号化文字集合へ該漢字を符号変換する際に巨大な符号テーブルを格納する記憶装置を必要としていた。
【解決手段】漢字辞典順に配列した複数の漢字を含む符号化文字集合から、それとは異なる漢字辞典順に配列した複数の漢字を含む符号化文字集合への該漢字の符号変換において、変換前の漢字符号を一次式に代入することにより変換後の漢字符号の近似値を計算し、変換前の漢字符号から検索した補正項を加算又は減算して変換後の符号を得る。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、漢字辞典順に配列した複数の漢字を含む符号化文字集合から、それとは異なる漢字辞典順に配列した複数の漢字を含む符号化文字集合への符号変換方法及び符号変換プログラムに関する。
【背景技術】
【0002】
従来、漢字を含むある特定の符号化文字集合から、それとは異なる符号化文字集合への文字の符号変換、例えばJISX0208からJISX0221又はISO10646―1への符号変換、JISX0212からJISX0221又はISO10646―1への符号変換、GB2312からJISX0221又はISO10646―1への符号変換は、図1に示すように変換前の符号に対応する変換後の符号を符号テーブルとして記憶装置に格納し、変換前の符号をインデックス値として符号テーブルを検索することにより実現している(例えば、非特許文献1又は非特許文献2参照)。
【非特許文献1】ケン・ランディ(Ken Lunde)著、小松章、逆井克巳訳、「CJKV日中韓越情報処理」、オライリー・ジャパン、2002年12月24日、p.419―420
【非特許文献2】深沢千尋著、「文字コード超研究」、ラトルズ、2003年8月2日、p.485
【発明の開示】
【発明が解決しようとする課題】
【0003】
従来の方法では、例えばJISX0208―1997情報交換用漢字符号の第二水準漢字3390文字に対するJISX0221国際符号化文字集合への符号テーブルは3390×16=54240ビット分、GB2312中国漢字の第二級漢字3008文字に対するJISX0221への符号テーブルは3008×16=48128ビット分、JISX0212―1990情報交換用漢字符号―補助漢字の漢字領域5801文字に対するJISX0221への符号テーブルは5801×16=92816ビット分の記憶装置をそれぞれ必要としていた。
【0004】
そこで本発明は、処理速度の低下をできる限り抑え、必要とする記憶装置の容量を削減する符号変換方法を実現することを課題とする。
【課題を解決するための手段】
【0005】
請求項1記載の第一発明は、図2に示すように、例えばJISX0208の第二水準漢字、GB2312の第二級漢字、JISX0212の漢字領域又はJISX0221のCJK統合漢字領域の漢字符号が原則として康煕字典を根拠とした部首と画数に基づく漢字辞典順の配列により連続して符号化されていることに着目し、JISX0208第二水準漢字の始点48区1点を4418、終点84区6点を7807とする漢字符号に対応するJISX0221漢字符号の関係、GB2312第二級漢字の始点56区1点を5170、終点87区94点を8177とする漢字符号に対応するJISX0221漢字符号の関係、又はJISX0212の漢字領域の始点16区1点を1410、終点77区67点を7210とする漢字符号に対応するJISX0221漢字符号の関係がそれぞれ一次式により高い精度で近似できる事実を利用し、一次式の係数Aと切片Bと該漢字の個数分の補正項Rを格納した補正テーブルを備え、変換前の漢字符号Xを入力し、一次式AX+Bに変換前の漢字符号Xを代入することにより変換後の漢字符号の近似値を計算し、変換前の漢字符号Xをインデックス値として補正テーブルから補正項Rを検索し、近似値AX+Bに補正項Rを加算又は減算することにより変換後の漢字符号Yを得ることを特徴とする符号変換方法である。
【0006】
請求項2記載の第二発明は、第一発明において、例えばJISX0212の24区70点及び70区84点の漢字符号のように一次式での近似値が対応するJISX0221漢字符号から大きく外れるため該漢字の補正項Rの値が補正テーブルに格納可能な値の範囲から逸脱する場合に、図3に示すように、該特定漢字の変換前の漢字符号と変換後の漢字符号を組として格納した特定漢字符号変換テーブルを備え、他の漢字符号に対する補正項として出現することのない特別な値Sを補正テーブルに格納し、その特別な値S以外の値が補正項Rとして出現した場合には第一発明により変換後の漢字符号を求め、その特別な値Sが補正項Rとして出現した場合には変換前の漢字符号Xを鍵として特定漢字符号変換テーブルを検索することにより変換後の漢字符号Yを得ることを特徴とする符号変換方法である。
【0007】
請求項3記載の第三発明は、第一発明において、例えばJISX0212の24区70点及び70区84点の漢字符号のように一次式での近似値が対応するJISX0221漢字符号から大きく外れるため該漢字の補正項Rの値が補正テーブルに格納可能な値の範囲から逸脱する場合に、図4に示すように、該特定漢字の変換後の漢字符号を格納した特定漢字符号テーブルと、他の漢字符号に対する補正項の値が特定漢字符号テーブルの最大インデックス値Tを常に超えるように調整した切片Bを備え、補正項Rが特定漢字符号テーブルの最大インデックス値Tを超えている場合には第一発明により変換後の漢字符号を求め、補正項Rが特定漢字符号テーブルの最大インデックス値T以下の場合にはその補正項をインデックス値として特定漢字符号テーブルを検索することにより変換後の漢字符号Yを得ることを特徴とする符号変換方法である。
【0008】
請求項4記載の第四発明は、一次式による近似値の精度を向上することにより補正項の最大値から最小値を減算した補正項範囲をより小さく収めて補正テーブルを格納する記憶装置の容量を削減するために、漢字辞典順に配列した漢字を含む変換前の符号化文字集合の該漢字領域を連続する複数の漢字符号から成る区画に分割し、分割したそれぞれの区画に変換後の漢字符号の近似に適する一次式の係数Aと切片Bとを備え、区画を等分割としない場合には変換前の漢字符号Xと区画下限値及び区画上限値との比較により、区画を2の冪乗値以外の間隔で等分割した場合には変換前の漢字符号Xへの定数の加算と除算により、区画を2の冪乗値の間隔で等分割した場合には変換前の漢字符号Xへの定数の加算と右シフトにより変換前の漢字符号Xの属する区画の判定処理を実行し、判定した区画に属する係数Aと切片Bを用いて第一発明、第二発明又は第三発明のいずれかにより変換後の漢字符号Yを得ることを特徴とする符号変換方法である。
【0009】
請求項5記載の第五発明は、記憶装置を備え、情報の入力機能と情報の演算又は加工機能と情報の出力機能とを有する演算処理装置に第一発明、第二発明、第三発明又は第四発明のいずれかの方法を実行させるための符号変換プログラムである。
【0010】
請求項6記載の第六発明は、第五発明の符号変換プログラムを記録した演算処理装置読み取り可能な記録媒体である。
【発明の効果】
【0011】
第一発明によれば、例えばJISX0212の漢字領域のうち25区から69区までの4230文字を対象としてJISX0221に変換する場合、一次式の係数Aと切片Bを適切に選択することにより補正項Rの最小値を0、最大値を505に収めることができるため、補正項に必要な容量は9ビットとなる。対象外の16区から24区までの846文字と70区以降の725文字の1571文字を従来の方法によりJISX0221に変換する場合には、必要な容量は9×4230+16×1571=63206ビットとなり、従来の方法の16×5801=92816ビットに比べ、記憶装置の容量を63206/92816=約68%に削減できる。
【0012】
第二発明によれば、例えばJISX0212の漢字領域5801文字すべてを対象としてJISX0221に変換する場合、24区70点及び70区84点の2文字の漢字符号を一次式で近似できない特定漢字符号とし、それ以外の5799文字を対象とする一次式の係数Aと切片Bを適切に選択することにより補正項Rの最小値を0、最大値を531に収めることができるため、補正項Rに必要な容量は10ビットとなる。特定漢字符号24区70点及び70区84点に対する補正テーブルには補正項として出現しない特別な値Sとして1023を格納し、変換前の漢字符号及び変換後の漢字符号にそれぞれ16ビットの計32ビットが必要なため、特定漢字符号変換テーブルで必要な容量は32×2=64ビットとなる。従って必要な容量の合計は、補正テーブルの10×5801=58010ビットに特定漢字符号変換テーブルの64ビットを加えた58074ビットとなり、従来の方法の16×5801=92816ビットに比べ、記憶装置の容量を58074/92816=約63%に削減できる。
【0013】
第三発明によれば、例えばJISX0212の漢字領域5801文字すべてを対象としてJISX0221に変換する場合、24区70点及び70区84点の2文字の漢字符号を一次式で近似できない特定漢字符号とし、それ以外の5799文字を対象とする一次式の係数Aと切片Bを適切に選択することにより補正項Rの最小値を492、最大値を1023に収めることができるため、補正項Rに必要な容量は10ビットとなる。特定漢字符号テーブルのインデックス値として24区70点には0を、70区84点には1を補正テーブルに格納し、特定漢字符号テーブルには2文字分のそれぞれ対応する変換後の漢字符号を格納する。従って必要な容量の合計は、補正テーブルの10×5801=58010ビットに特定漢字符号変換テーブルの16×2=32ビットを加えた58042ビットとなり、従来の方法の5801×16=92816ビットに比べ、記憶装置の容量を58042/92816=約63%に削減できる。
【0014】
第四発明によれば、例えばJISX0212の漢字領域5801文字すべてを対象としてJISX0221に変換する場合、漢字領域の先頭から466文字分の区画、続いて512文字の区画をそれぞれ10個、最後に215文字分の区画の合計12個の区画に分割し、24区70点、39区22点及び70区84点の3文字の漢字符号を一次式で近似できない特定漢字符号とし、それ以外の5798文字をそれぞれの文字が属する区画を対象とする一次式の係数Aと切片Bを適切に選択することにより補正項Rの最小値を10、最大値を255に収めることができるため、補正項Rに必要な容量は8ビットとなる。特定漢字符号テーブルのインデックス値として24区70点の漢字には0を、39区22点の漢字には1を、70区84点の漢字には2を補正テーブルに格納し、特定漢字符号テーブルには3文字分のそれぞれ対応する変換後符号を格納する。従って必要な容量の合計は、補正テーブルの8×5801=46408ビットに、特定漢字符号変換テーブルの3×16=48ビットと、12区画分に相当する係数と切片の格納に必要な12×(16+16)=384ビットを加えた46840ビットとなり、従来の方法の5801×16=92816ビットに比べ、記憶装置の容量を46840/92816=約51%に削減できる。
【発明を実施するための最良の形態】
【0015】
第一発明で使用する一次式の係数A及び切片B、第二発明及び第三発明で区別する特定漢字符号、又は第四発明で分割する区画のそれぞれを適切に選択することにより、補正テーブルの容量を最小とすることができる。補正テーブルの容量を最小とするために、漢字符号の補正項Rの最大値から最小値を減算した補正項範囲を最小とすれば良い。
【0016】
一次式で近似できないことが明白な特定漢字符号を除いた変換前の漢字符号及び変換後の漢字符号を基に最小自乗法により一次式の係数A及び切片Bの概算値を計算し、この概算値を初期値としたはさみうち法等の繰り返し計算法により、補正項範囲を最小とする係数A及び切片Bを決定する。演算処理装置の除算命令の代わりに右シフト命令を用いた固定小数点演算を行うことにより変換処理の高速化を図るために、係数Aを2の冪乗値を分母とする分数とし、切片Bを整数値としても良い。
【0017】
決定した一次式の係数A及び切片Bを用いて特定漢字符号以外の変換前の漢字符号X及び変換後の漢字符号Yから補正項R=Y−AX−B又はAX+B−Yを計算し補正テーブルを作成する。必要に応じて補正項Rが最小又は最大となる漢字符号を更に特定漢字符号として除外し、再度繰り返し計算法により係数A及び切片Bを修正することにより補正項範囲をさらに狭めても良い。
【0018】
第四発明で分割する区画は、漢字符号を配列した漢字辞典順の基となる部首に応じた領域の境界で分割しても良い。演算処理の単純化を図るため区画を等分割する場合には、変換前の漢字符号がどの区画に属するかを判定する判定処理で必要となる演算処理装置の除算命令の代わりに右シフト命令を用いて判定処理を高速化する目的で間隔を2の冪乗値としても良い。
【実施例1】
【0019】
第一発明により、JISX0212の漢字領域のうち25区から69区までの4230文字をJISX0221に変換する場合、一次式の係数Aを7329/2048に、切片Bを14808とすることにより、補正項Rの最小値は0、最大値を505に収めることができるため、補正項に必要な容量を9ビットとして補正テーブルを作成できる。
【実施例2】
【0020】
第二発明により、JISX0212の漢字領域5801文字すべてをJISX0221に変換する場合、24区70点及び70区84点の漢字符号を一次式で近似できない特定漢字符号とし、一次式の係数Aを3675/1024に、切片Bを14742とすることにより、補正項Rの最小値を0、最大値を531に収めることができるため、補正項に必要な容量を10ビットとして補正テーブルを作成できる。
【実施例3】
【0021】
第三発明により、JISX0212の漢字領域5801文字すべてをJISX0221に変換する場合、24区70点及び70区84点の漢字符号を一次式で近似できない特定漢字符号とし、一次式の係数Aを3675/1024に、切片Bを14250とすることにより、補正項Rの最小値を492、最大値を1023に収めることができるため、補正項に必要な容量を10ビットとして補正テーブルを作成できる。
【実施例4】
【0022】
第四発明により、JISX0212の漢字領域5801文字すべてをJISX0221に変換する場合、漢字領域の先頭から466文字分の区画、続いて512文字の区画をそれぞれ10個、最後に215文字分の区画の合計12個の区画に分割し、24区70点、39区22点及び70区84点の3文字の漢字符号を一次式で近似できない特定漢字符号とし、一次式の係数Aと切片Bを表1に示す値とすることにより、補正項Rの最小値を10、最大値を255に収めることができるため、補正項に必要な容量を8ビットとして単一の補正テーブルを作成できる。
【0023】
【表1】

【0024】
実施例4において、補正テーブルをそれぞれの区画に分割して記憶装置に格納する場合には区画3、区画5及び区画6の計3区画の補正項の最大値を127に収めることができるため、1文字の補正項に必要な容量を7ビットにすることで、更に3×512=1536ビットの削減ができる。この場合に必要な容量の合計は、補正テーブルの8×5801−1536=44872ビットに、特定漢字符号変換テーブルの3×16=48ビットと、12区画分に相当する係数と切片の格納に必要な12×(16+16)=384ビットを加えた45304ビットとなり、従来の方法の5801×16=92816ビットに比べ、記憶装置の容量を45304/92816=約49%に削減できる。
【産業上の利用可能性】
【0025】
本発明は、携帯電話のように演算処理装置を内蔵し記憶装置の容量が限定された装置において、JISX0208情報交換用漢字符号又はJISX0212情報交換用漢字符号―補助漢字からJISX0221国際符号化文字集合への符号変換を多用するXMLテキスト処理、電子メールテキスト処理又はウェブページテキスト処理を実行する場合に有用である。
【図面の簡単な説明】
【0026】
【図1】符号テーブルにより単純に変換する従来の符号変換方法
【図2】一次式による近似と補正テーブルによる漢字符号変換方法
【図3】近似できない漢字を特定漢字符号変換テーブルにより変換する方法
【図4】近似できない漢字を特定漢字符号テーブルにより変換する方法

【特許請求の範囲】
【請求項1】
漢字辞典順に配列した複数の漢字を含む符号化文字集合から、それとは異なる漢字辞典順に配列した複数の漢字を含む符号化文字集合への該漢字の符号変換において、一次式の係数Aと切片Bと該漢字の個数分の補正項Rを格納した補正テーブルを備え、変換前の漢字符号Xを入力し、一次式AX+Bにより変換後の漢字符号Yの近似値を計算し、変換前の漢字符号Xをインデックス値として補正テーブルから補正項Rを検索し、近似値AX+Bに補正項Rを加算又は減算することにより変換後の漢字符号Yを計算し、変換後の漢字符号Yを出力することを特徴とする符号変換方法。
【請求項2】
請求項1記載の符号変換方法において、補正項Rの値が補正テーブルに格納可能な値の範囲から逸脱する特定漢字符号に対して該特定漢字の変換前の漢字符号と変換後の漢字符号を組として格納した特定漢字符号変換テーブルを備え、他の漢字符号に対する補正項Rとして出現することのない特別な値Sを補正テーブルに格納し、その特別な値Sが補正項Rとして出現した場合には変換前の漢字符号Xを鍵として特定漢字符号変換テーブルを検索することにより変換後の漢字符号Yを得ることを特徴とする符号変換方法。
【請求項3】
請求項1記載の符号変換方法において、補正項Rの値が補正テーブルに格納可能な値の範囲から逸脱する特定漢字符号に対して該特定漢字の変換後の漢字符号を格納した特定漢字符号テーブルと、他の漢字符号に対する補正項Rの値が特定漢字符号テーブルの最大インデックス値Tを常に超えるように調整した切片Bとを備え、補正項Rが特定漢字符号テーブルの最大インデックス値T以下の場合にはその補正項Rをインデックス値として特定漢字符号テーブルを検索することにより変換後の漢字符号Yを得ることを特徴とする符号変換方法。
【請求項4】
請求項1、請求項2又は請求項3記載の符号変換方法において、該漢字領域を連続する複数の漢字符号から成る区画に分割し、分割したそれぞれの区画に変換後の漢字符号の近似に適する一次式の係数Aと切片Bとを備え、変換前の漢字符号Xを入力し、変換前の漢字符号Xの属する区画の判定処理を実行し、判定した区画に属する係数Aと切片Bにより近似値AX+Bを計算することを特徴とする符号変換方法。
【請求項5】
演算処理装置に請求項1、請求項2、請求項3又は請求項4記載の方法を実行させるための符号変換プログラム。
【請求項6】
請求項5記載の符号変換プログラムを記録した演算処理装置読み取り可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2006−260375(P2006−260375A)
【公開日】平成18年9月28日(2006.9.28)
【国際特許分類】
【出願番号】特願2005−79276(P2005−79276)
【出願日】平成17年3月18日(2005.3.18)
【出願人】(305010355)
【Fターム(参考)】