JP2000022552A - Information processing device and system - Google Patents

Information processing device and system

Info

Publication number
JP2000022552A
JP2000022552A JP10185913A JP18591398A JP2000022552A JP 2000022552 A JP2000022552 A JP 2000022552A JP 10185913 A JP10185913 A JP 10185913A JP 18591398 A JP18591398 A JP 18591398A JP 2000022552 A JP2000022552 A JP 2000022552A
Authority
JP
Japan
Prior art keywords
character string
occurrences
dictionary
input
character
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP10185913A
Other languages
Japanese (ja)
Other versions
JP3511901B2 (en
Inventor
Tatsuki Inuzuka
達基 犬塚
Keiko Gunji
圭子 郡司
Yasutaka Toyoda
康隆 豊田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP18591398A priority Critical patent/JP3511901B2/en
Publication of JP2000022552A publication Critical patent/JP2000022552A/en
Application granted granted Critical
Publication of JP3511901B2 publication Critical patent/JP3511901B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To perform effective compression for coding by calculating a coding error from the code word length that is decided based on the occurrence frequency and correcting the occurrence frequency of another character string based on the calculated coding error. SOLUTION: The information on the occurrence frequency of a partial character string stored in a dictionary 102 is used to analyze the characters by a character string analyzer 101 and also to generate codes by a code generator 103. The analyzer 101 reads the candidate character having high occurrence probability after an inputted character string out of the dictionary 102 based on the transition probability that is set between the character strings stored in the dictionary 102. The generator 103 replaces the signals which are inputted by a signal input device 100 and the analyzer 101 with the code words and performs the optimum generation of codes based on the occurrence frequency of the character string stored in the dictionary 102. Then a coding error is calculated to correct the occurrence frequency of other character strings whose generation of code words are not over yet. This arithmetic processing is successively repeated for the signals having higher occurrence frequencies.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、符号化復号化装置
に係り、信号を効率よく圧縮するための処理手順と装置
構成に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to an encoding / decoding apparatus, and more particularly to a processing procedure and an apparatus configuration for efficiently compressing a signal.

【0002】[0002]

【従来の技術】文書,プログラムなどの文字列を対象と
した符号化方式を、T. A. Welchが、“A Technique for
High Performance Data Compression”, IEEE Comput
ing,vol. 17, pp. 8−19, June, 1984、と題する論文で
提案している。これは、Lempel,Zifが提案した従来方
式の改良であることから、3者の頭文字をとり、LZW
方式と呼ばれている。この方式は、入力した文字列(信
号系列)を部分文字列(部分信号系列)に分解して、生
起する頻度に基づき辞書に登録していく手順を持つこと
が特徴である。これにより、入力した部分文字列がすで
に辞書登録済みならば、該文字列を辞書の登録番号に変
換することでデータ圧縮を実現する。この方式のもう一
つの特徴は、入力文字列の生起回数に基づき辞書内容を
更新することで、文字列の特性に適応できることであ
る。
2. Description of the Related Art TA Welch describes an encoding method for character strings such as documents and programs as "A Technique for
High Performance Data Compression ”, IEEE Comput
ing, vol. 17, pp. 8-19, June, 1984. Since this is an improvement on the conventional method proposed by Lempel and Zif, the three initials are taken and LZW
It is called a method. This method is characterized in that it has a procedure of decomposing an input character string (signal sequence) into a partial character string (partial signal sequence) and registering it in a dictionary based on the frequency of occurrence. Thereby, if the input partial character string has already been registered in the dictionary, data compression is realized by converting the character string into a registration number of the dictionary. Another feature of this method is that it can adapt to the characteristics of a character string by updating the dictionary contents based on the number of occurrences of the input character string.

【0003】一方、上記とは異なる観点から、ハフマン
符号と呼ばれる符号語の生成方式を、Huffman, D. A.
が、:“A method for the construction of minimumre
dundancy codes", Proceeding of IRE, vol. 40, no.
9, pp. 1098−1101,Sep. 1952 、と題する論文で提案を
行っている。この方式は、信号の生起確率に基づき符号
を生成する手順である。信号の取り得る事象数が増える
と符号生成のために膨大な処理時間がかかるため、一般
に、あらかじめ全ての符号を作成して表にまとめて利用
する。たとえば、ファクシミリでは、全ての符号を国際
標準として定めている。これは、典型的な画像を定め
て、ラスタースキャンして得られた黒と白の連続個数
(ラン長)から、上記ハフマン方式に基づき作成した符
号である。
On the other hand, from a viewpoint different from the above, a method of generating a codeword called a Huffman code is described in Huffman, DA
But: “A method for the construction of minimumre
dundancy codes ", Proceeding of IRE, vol. 40, no.
9, pp. 1098-1101, Sep. 1952. This method is a procedure for generating a code based on a signal occurrence probability. When the number of events that can be taken by a signal increases, it takes an enormous amount of processing time for code generation. Therefore, in general, all codes are created in advance and used in a table. For example, facsimile defines all codes as international standards. This is a code created based on the Huffman method from a continuous number of black and white (run length) obtained by defining a typical image and performing raster scan.

【0004】[0004]

【発明が解決しようとする課題】一般に圧縮処理は、入
力信号系列の変換を行うモデル化部と、符号語の割り当
てを行う符号変換部から構成される。従来提案のLZW
方式は、文字列を対象にして、前者のモデル化部の処理
を工夫した方式である。また、従来のハフマン符号は、
信号の生起確率を利用した、後者の符号変換部の代表的
な手法である。このように、いずれの従来方式も、モデ
ル化部と符号変換部を別々にしているため、十分な圧縮
効率を実現できないという問題がある。
Generally, the compression processing comprises a modeling unit for converting an input signal sequence and a code conversion unit for allocating code words. Conventionally proposed LZW
The method is a method in which the processing of the former modeling unit is devised for character strings. Also, the conventional Huffman code is
This is a typical method of the latter code conversion unit using the occurrence probability of a signal. As described above, all of the conventional methods have a problem that sufficient compression efficiency cannot be realized because the modeling unit and the code conversion unit are separated.

【0005】さらに上記の従来方式は、信号の生成手段
とは無関係な動作を行う方式である。すなわち、符号化
対象の信号が、あらかじめ全て生成されている場合(バ
ッチ型)も、例えば操作者が一文字ずつ入力する場合
(リアルタイム型)も、圧縮処理の手順は変わらない。
リアルタイム型の場合に、操作者の入力動作と圧縮処理
手順において、信号のやり取りすることは考慮されてい
ない。
Further, the above-mentioned conventional system is a system which performs an operation irrelevant to signal generation means. That is, the procedure of the compression process does not change when the signals to be encoded are all generated in advance (batch type) or when the operator inputs characters one by one (real time type).
In the case of the real-time type, the exchange of signals is not considered in the input operation of the operator and the compression processing procedure.

【0006】本発明は符号化において効率の良い圧縮を
行う情報処理装置を提供することを目的とする。
An object of the present invention is to provide an information processing apparatus that performs efficient compression in encoding.

【0007】[0007]

【課題を解決するための手段】上記目的は、少なくとも
文字が入力される入力部と、文字列とこの文字列の生起
回数及び文字列毎に与えられる識別番号とを対応付けて
記憶する辞書と、辞書に記憶された文字列について生起
回数が大きい文字列から順に、生起回数に基づいて符号
語長を求め、この符号語長から対応する識別番号の符号
語を生成すると共に、求めた符号語長から符号化誤差を
求めこの符号化誤差から他の文字列の生起回数を補正す
る符号化部とを有することにより達成することができ
る。
An object of the present invention is to provide a dictionary for storing at least an input unit for inputting a character, a character string, the number of occurrences of the character string, and an identification number given to each character string in association with each other. The code word length is determined based on the number of occurrences of the character string stored in the dictionary in order from the character string having the highest number of occurrences, and the code word of the corresponding identification number is generated from the code word length, and the obtained code word is determined. This can be achieved by providing a coding unit that obtains a coding error from the length and corrects the number of occurrences of another character string from the coding error.

【0008】また上記目的は、入力された文字列と、こ
の文字列の生起回数および文字列ごとに与えられた識別
番号とを記憶した辞書から生起回数の最も大きい文字列
について、生起回数から符号語のビット長を求め、この
ビット長の整数部分から文字列の識別番号の符号語を生
成する段階と、求めたビット長から符号化誤差を求め、
この符号化誤差と残りの文字列の生起回数から残りの文
字列の新たな生起回数を決定する段階と、残りの文字列
の生起回数の最も大きい文字列について生起回数から符
号語のビット長を求め、このビット長の整数部分から文
字列の識別番号の符号語を生成する段階とを有すること
により達成することができる。
[0008] Further, the object of the present invention is to code a character string having the largest number of occurrences from a dictionary storing an input character string, the number of occurrences of the character string, and an identification number given to each character string. Determining the bit length of the word, generating a code word of the identification number of the character string from the integer part of the bit length, and determining the encoding error from the determined bit length,
Determining a new occurrence count of the remaining character string from the encoding error and the occurrence count of the remaining character string, and determining the bit length of the code word from the occurrence count for the character string having the largest occurrence count of the remaining character string. And generating a code word of the identification number of the character string from the integer part of the bit length.

【0009】すなわち、本発明により生成される符号語
は、符号語を生成するたびに、まだ生成されていない文
字列の生起回数を補正する。このようにすることによ
り、生成された符号語が近接し、効率良い符号を生成す
ることができる。また、求めた符号長の整数部分から符
号語を生成するために高速に符号語を生成することがで
きる。
That is, the code word generated according to the present invention corrects the number of occurrences of a character string that has not been generated each time a code word is generated. By doing so, the generated codewords are close to each other, and an efficient code can be generated. In addition, a codeword can be generated at high speed because the codeword is generated from the integer part of the obtained code length.

【0010】[0010]

【発明の実施の形態】以下の実施例では、バッチ型とリ
アルタイム型の基本構成について述べる。またリアルタ
イム型における入力支援の具体的な実施例を述べる。い
ずれの場合にも、入力信号の性質に適応して最適な符号
語を生成することが特徴であり、該符号生成の具体的な
手順を説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS In the following embodiments, a basic configuration of a batch type and a real time type will be described. A specific embodiment of input support in a real-time type will be described. In any case, the feature is that an optimum codeword is generated according to the property of the input signal, and a specific procedure of the code generation will be described.

【0011】以下の実施例では、入力する信号は1バイ
トで表される文字コードの系列(文字列)とする。しか
し、本発明は、文字,画像,音声などの信号を対象に、
幅広く適用可能である。
In the following embodiment, an input signal is a character code series (character string) represented by one byte. However, the present invention targets signals such as characters, images, and voices,
Widely applicable.

【0012】以下の説明中では、信号,事象,文字、あ
るいは、文字列と信号系列という言葉を同じ意味で使っ
ている個所がある。また、本発明では、生起確率と生起
回数は相互に変換可能であるため、同じ意味で使ってい
る個所がある。
In the following description, there is a place where the words signal, event, character, or a character string and a signal sequence are used interchangeably. In the present invention, since the occurrence probability and the number of occurrences can be mutually converted, there are some places where the same meaning is used.

【0013】(1)基本構成 図1に本発明の情報処理装置の符号化処理を行う部分の
基本構成を示す。
(1) Basic Configuration FIG. 1 shows a basic configuration of a part for performing an encoding process of an information processing apparatus according to the present invention.

【0014】信号入力装置100は、バッチ型あるいは
リアルタイム型の動作をする。図1(1)に示すバッチ
型の場合は、あらかじめファイルに蓄積されているよう
な信号系列を入力の対象とする。バッチ型では、操作者
に対する支援機能は不要である。一方、図1(2)に示
すようにリアルタイム型の場合は、例えば操作者がキー
ボードを使って一文字毎にキー操作を行うことで信号入
力する。リアルタイム型では、表示手段などを備えるこ
とで、入力済みの文字列から推定される候補文字を操作
者に対して表示することで、操作者の信号入力作業の支
援を行う。
The signal input device 100 operates in a batch type or a real time type. In the case of the batch type shown in FIG. 1A, a signal sequence that is stored in a file in advance is an input target. The batch type does not require a support function for the operator. On the other hand, in the case of the real-time type as shown in FIG. 1 (2), for example, the operator inputs a signal by performing a key operation for each character using a keyboard. In the real-time type, a display unit or the like is provided to display a candidate character estimated from an input character string to the operator, thereby assisting the operator in inputting a signal.

【0015】文字列解析装置101は、辞書102に登
録してある文字間の遷移確率を利用して、入力済みの文
字列に引き続いて生起する確率の高い候補文字列を、辞
書102から読み出す。また、信号入力装置100から
入力した文字列を、辞書102に登録してある文字間の
遷移確率を利用して、部分文字列に分解する。
The character string analyzer 101 reads out from the dictionary 102 a candidate character string having a high probability of occurring subsequent to an input character string, using the transition probability between characters registered in the dictionary 102. In addition, the character string input from the signal input device 100 is decomposed into partial character strings by using the transition probability between characters registered in the dictionary 102.

【0016】辞書102は、部分文字列の構造に関する
データを記憶する手段である。文字と文字の遷移する確
率、あるいは部分文字列の生起回数などを、トリー形式
などのデータ構造を用いて記憶する。辞書102の内容
は、あらかじめ固定的に設定することも、文字列解析装
置101によって分解した部分文字列の生起回数の測定
結果を用いて更新することもできる。符号生成装置10
3は、文字列解析装置101によって分解した部分文字
列を、辞書102に登録した生起回数に関する情報を参
照することで、効率の良い符号語に変換する。
The dictionary 102 is a means for storing data relating to the structure of a partial character string. The transition probability between characters or the number of occurrences of a partial character string is stored using a data structure such as a tree format. The contents of the dictionary 102 can be fixedly set in advance, or can be updated using the measurement result of the number of occurrences of the partial character string decomposed by the character string analysis device 101. Code generation device 10
No. 3 converts the partial character string decomposed by the character string analysis device 101 into an efficient codeword by referring to the information on the number of occurrences registered in the dictionary 102.

【0017】本発明では、辞書102に記憶された部分
文字列の生起回数に関する情報を、文字列解析装置10
1による文字列の解析、符号生成装置103の符号生成
に利用する。
In the present invention, information on the number of occurrences of a partial character string stored in the dictionary 102 is stored in the character string analyzing apparatus 10.
1 is used for character string analysis and code generation of the code generation device 103.

【0018】またリアルタイム型の信号入力では、信号
入力装置100における操作者の入力支援のために、辞
書102の登録内容を利用する。
In real-time signal input, the registered contents of the dictionary 102 are used to support input by the operator in the signal input device 100.

【0019】本発明では、生起回数に基づく最適符号を
生成することで高い圧縮率を実現すると共に、辞書を複
数の目的に兼用することで装置の小型化を実現する。
According to the present invention, a high compression rate is realized by generating an optimal code based on the number of occurrences, and the size of the apparatus is reduced by using a dictionary for a plurality of purposes.

【0020】(2)信号入力装置100の構成 信号入力装置100の基本動作は、文字列などの信号を
順次に入力して、文字列解析装置101に信号を渡すた
めの入出力インターフェースである。
(2) Configuration of the Signal Input Device 100 The basic operation of the signal input device 100 is an input / output interface for sequentially inputting a signal such as a character string and passing the signal to the character string analyzer 101.

【0021】リアルタイム型の信号入力装置100は、
上記のバッチ型の動作に加えて、1文字ずつの入力手
段,手書き文字の認識手段,かな漢字変換手段,入力文
字および入力候補文字の表示手段,装置の動作を制御す
るための指示入力手段、などと組み合わせて動作する。
The real-time signal input device 100 includes:
In addition to the above-mentioned batch type operation, input means for each character, means for recognizing handwritten characters, kana-kanji conversion means, display means for input characters and input candidate characters, instruction input means for controlling the operation of the device, etc. Works in combination with.

【0022】例えば、信号入力装置100をキーボード
とディスプレーで構成する。そして、図2に示す手順の
ように、操作者が一文字を入力すると、文字列解析装置
101が辞書102内の該入力文字から始まる部分文字列
を候補として読み出して、信号入力装置100のディス
プレーに表示する。文字を入力する毎に、辞書に登録さ
れた部分文字列の候補が絞られていく。操作者は、入力
したい文字列が、ディスプレー表示された部分文字列の
中にあれば、それを選択することで、全ての文字をキー
ボード入力しなくても良い。候補がない場合には、操作
者は一文字ずつキーボードによって部分文字列を入力す
る。このように選択あるいは入力した文字列を、符号化
対象として、符号化装置103に伝える。
For example, the signal input device 100 includes a keyboard and a display. When the operator inputs one character as in the procedure shown in FIG.
101 reads out a partial character string starting from the input character in the dictionary 102 as a candidate and displays it on the display of the signal input device 100. Each time a character is input, candidates for partial character strings registered in the dictionary are narrowed down. If the operator wants to enter a character string in the partial character string displayed on the display, the operator does not have to enter all the characters by keyboard by selecting the character string. If there is no candidate, the operator inputs a partial character string using the keyboard one character at a time. The character string thus selected or input is transmitted to the encoding device 103 as an encoding target.

【0023】このような手順の結果、操作者が全ての文
字をキーボード入力しなくても簡易かつ高速に文字入力
を実行できる。また、辞書に登録されている候補文字を
表示することで、あいまいな記憶に基づく文字列を入力
する際の支援となる。例えば、かな漢字変換する際に、
候補文字の表示をすることで同音異義語の変換ミスによ
る誤入力を防止することもできる。本発明は、このよう
な操作者に対する入力支援を実現できる。
As a result of such a procedure, it is possible to execute character input simply and at high speed without the operator having to input all the characters on the keyboard. In addition, displaying candidate characters registered in the dictionary helps to input a character string based on ambiguous memory. For example, when converting kana-kanji,
By displaying candidate characters, it is possible to prevent erroneous input due to conversion mistake of homonyms. The present invention can provide input support for such an operator.

【0024】(3)文字列解析装置101の構成 文字列解析装置101は、信号入力装置100から入力
した文字列を、部分文字列に分解する。また、入力済み
の文字列に引き続いて生起する確率の高い候補文字列
を、辞書102から読み出す。いずれも辞書102に登
録してある文字間の遷移確率を利用する。
(3) Configuration of Character String Analysis Device 101 The character string analysis device 101 decomposes a character string input from the signal input device 100 into partial character strings. Further, a candidate character string having a high probability of occurring subsequently to the input character string is read from the dictionary 102. In each case, the transition probability between characters registered in the dictionary 102 is used.

【0025】図3は情報処理装置の入出力部、符号生成
部の構成を示したものであり、リアルタイム型の信号入
力をする場合には、図3に示すように、入力済みの文字
列を一時的に入力文字バッファ106に蓄積し、辞書検
索装置を用いて、辞書102に登録されている部分文字
列を検索する。図では、英文の「I HAVE APE
N.」を入力する途中を示してある。辞書102には、
先頭の文字「I」は一文字で表される一人称の主語であ
る確率が高く、次には文字の区切りを示すスペースであ
る確率が高いという情報を記憶しておくことで、主語
「I」に引き続く「HA」で始まる動詞として「HAV
E」「HAD」「HATE」などを候補として辞書から
読み出し、候補文字バッファ107に格納する。バッフ
ァ106の入力文字と107の候補文字は、信号入力装
置100に備えたディスプレーに表示する。そして、操
作者が候補の一つを選択することで、一文字ずつ入力し
なくても、入力文字を確定できる。候補文字バッファ1
07の確定した部分文字列は、入力文字バッファ106
に移動する。符号生成装置103は、入力文字バッファ
106を符号化処理の対象として、辞書102の部分文
字列の生起回数に基づき符号を生成し、生成した符号
は、符号メモリ105に蓄積、あるいは外部へ出力す
る。
FIG. 3 shows the configuration of an input / output unit and a code generation unit of the information processing apparatus. When a real-time signal is input, as shown in FIG. A partial character string that is temporarily stored in the input character buffer 106 and registered in the dictionary 102 is searched using a dictionary search device. In the figure, the English text “I HAVE APE
N. "Is being input. In the dictionary 102,
By storing information that the first character "I" is likely to be a first-person subject represented by one character, and secondly to be a space indicating a character delimiter, the subject "I" A verb starting with "HA"
E, HAD, HATE, etc. are read from the dictionary as candidates and stored in the candidate character buffer 107. The input characters of the buffer 106 and the candidate characters of 107 are displayed on a display provided in the signal input device 100. When the operator selects one of the candidates, the input character can be determined without inputting one character at a time. Candidate character buffer 1
07 is stored in the input character buffer 106.
Go to The code generation device 103 generates a code based on the number of occurrences of the partial character string in the dictionary 102 with the input character buffer 106 as a target of the encoding process, and stores the generated code in the code memory 105 or outputs it to the outside. .

【0026】リアルタイム型の場合には、操作者が入力
する制御のための信号を利用して、文字列の分解をする
ことができる。例えば、前記の信号入力装置100の動
作例で示したように、表示した複数の候補文字列の一つ
を選択する動作によって、確定した文字の終端を、文字
列の区切りとすることができる。また、日本語入力にお
ける、かな漢字変換の変換確定入力を、文字列の区切り
を指示する信号として利用できる。
In the case of the real-time type, a character string can be decomposed using a control signal input by an operator. For example, as shown in the operation example of the signal input device 100, the terminal of the determined character can be set as a character string delimiter by an operation of selecting one of the displayed candidate character strings. In addition, a conversion confirmation input of kana-kanji conversion in Japanese input can be used as a signal for instructing a character string delimiter.

【0027】図4は情報処理装置の入力部と符号生成部
を示したものであり、バッチ型およびリアルタイム型の
どちらでも、図4に示すように、文字列分解装置を用い
て、入力した文字列のみから、辞書102の入力文字列
の文字間の遷移確率に関する情報に基づき、入力文字列
を分解して部分文字列を作ることができる。これには、
入力文字列を用いて、トリーを先頭から辿っていき、ト
リー終端になった時点で部分文字列の区切りと判定す
る。文字列中に含まれる、ピリオド,コンマ,スペー
ス,括弧などの文字を、文字列の区切りを指示する信号
として利用できる。また、文法に基づく品詞の判定、主
語述語の解析などに基づき、文字列の分解をすることが
できる。文字列分解装置の構成は、従来のLZW方式の
文字列の分解方式を利用することもできる。分解した部
分文字列は、符号生成装置103によって符号に変換す
る。
FIG. 4 shows an input unit and a code generation unit of the information processing apparatus. In both the batch type and the real-time type, as shown in FIG. The input character string can be decomposed based on the information on the transition probability between the characters of the input character string in the dictionary 102 only from the column to create a partial character string. This includes
Using the input character string, the tree is traced from the beginning, and when it reaches the end of the tree, it is determined that a partial character string is delimited. Characters such as periods, commas, spaces, and parentheses included in a character string can be used as a signal indicating a character string delimiter. In addition, character strings can be decomposed based on part-of-speech determination based on grammar, analysis of subject predicates, and the like. As the configuration of the character string decomposing device, a conventional LZW character string decomposing method can be used. The decomposed partial character string is converted into a code by the code generation device 103.

【0028】(4)辞書102の構成 辞書102は、部分文字列の構造と生起回数に関する情
報を記憶する。辞書102は、信号入力装置100にお
ける操作者の入力操作の簡易化を図る文字列入力支援
と、文字列解析装置101における部分文字列の作成、
符号生成装置103の圧縮処理などに利用する。トリー
構造で辞書を構成する場合には、一つの枝に一つの文字
を割り当てることで、分岐点を経由して末端まで枝を辿
ることで部分文字列を表すことができる。図5に、文字
列「I HAVE A PEN.」を構成する部分文字列
と、それ以外の幾つかの部分文字列から作られるトリー
構造を、簡略に示している。それぞれの枝、あるいは分
岐点にカウンタを備えて、生起回数を書き込めるように
する。部分文字列は「I」のように一つの文字でも、
「PEN」のように複数の文字から構成しても良く、あ
るいは文章であっても良い。
(4) Configuration of Dictionary 102 The dictionary 102 stores information on the structure of partial character strings and the number of occurrences. The dictionary 102 supports character string input for simplifying the input operation of the operator in the signal input device 100, and creates a partial character string in the character string analysis device 101,
It is used for the compression processing of the code generation device 103 and the like. When a dictionary is configured with a tree structure, a partial character string can be represented by allocating one character to one branch and tracing the branch to the end via a branch point. FIG. 5 schematically shows a tree structure made up of a partial character string constituting the character string "I HAVE A PEN." And some other partial character strings. Each branch or branch point is provided with a counter so that the number of occurrences can be written. The substring is a single character like "I",
It may be composed of a plurality of characters such as “PEN”, or may be a sentence.

【0029】本発明は、上記カウンタで計数する生起回
数を用いて符号生成の演算をする。確率値に換算するこ
ともできるが、小数点演算をする回路が必要である。例
えば、分岐点を介して接続される枝から枝(すなわち文
字と文字)への生起回数を、該分岐点から出力する枝の
生起回数の総数で割り算すれば、文字間の遷移確率が得
られる。複数の分岐点を介して接続される複数の枝(す
なわち文字列)についても、各文字間の遷移確率を組み
あわせることで、文字列の生起確率が得られる。
According to the present invention, code generation is calculated using the number of occurrences counted by the counter. Although it can be converted to a probability value, a circuit for performing a decimal point operation is required. For example, by dividing the number of occurrences of a branch connected from a branch point to a branch (that is, a character and a character) by the total number of occurrences of the branch output from the branch point, a transition probability between characters can be obtained. . For a plurality of branches (ie, character strings) connected via a plurality of branch points, the occurrence probability of the character string can be obtained by combining the transition probabilities between the characters.

【0030】初期状態においては、全ての部分文字列
に、均一な生起回数を割り当てておくことができる。あ
るいは、あらかじめ典型的な文書を統計的に測定するこ
とで、部分文字列の生起回数をあらかじめ設定しておく
ことができる。あるいは、前回の動作の結果を記憶して
おき、初期値として利用することもできる。符号化対象
の信号の全体が、あらかじめファイル記憶されている場
合には、該信号を対象にプリスキャンして、部分文字列
の生起回数などの信号特性を測定して辞書を作り、該辞
書の内容に基づき符号化処理を行うこともできる。
In the initial state, a uniform number of occurrences can be assigned to all partial character strings. Alternatively, the number of occurrences of a partial character string can be set in advance by statistically measuring a typical document in advance. Alternatively, the result of the previous operation can be stored and used as an initial value. If the entire signal to be encoded is stored in a file in advance, the signal is pre-scanned, the signal characteristics such as the number of occurrences of partial character strings are measured, and a dictionary is created. An encoding process can be performed based on the content.

【0031】上記の初期設定値を固定的に利用すること
も、新たに入力した部分文字列の生起回数に基づきカウ
ンタ内容を更新することもできる。例えば、入力した部
分文字列が、既に辞書102に登録済みであれば該当す
るカウンタの生起回数を更新する。未登録であれば、分
岐する枝を増やすことで新たに登録する。生起回数が増
加しない部分文字列は登録抹消することができる。辞書
102の内容は、符号化装置と復号化装置の両者で共通
の辞書内容を参照できるように、登録内容と更新時期を
設定する。辞書102のデータ容量は、辞書内容の更新
によって変動するが、書き換え可能なメモリに蓄積する
ことで問題ない。メモリ蓄積のためのデータ構造は、限
定するものではない。
The above-mentioned initial setting value can be fixedly used, or the content of the counter can be updated based on the number of occurrences of a newly input partial character string. For example, if the input partial character string is already registered in the dictionary 102, the occurrence count of the corresponding counter is updated. If not registered, new registration is performed by increasing the number of branches. A partial character string whose occurrence count does not increase can be deleted. For the contents of the dictionary 102, the registered contents and the update time are set so that both the encoding device and the decoding device can refer to the common dictionary contents. Although the data capacity of the dictionary 102 fluctuates due to the update of the dictionary contents, there is no problem if the data is stored in a rewritable memory. The data structure for memory storage is not limited.

【0032】トリー構造の各分岐点の最大分岐数は、入
力信号が1バイトの文字コードである場合に256(2
の8乗)、2バイトコードの場合は65536(2の1
6乗)である。さらに、スタート,ストップなどの制御
コードを組み込むことができる。これらの制御コード
は、文字コードと同じく符号に変換することができる。
When the input signal is a 1-byte character code, the maximum number of branches at each branch point of the tree structure is 256 (2
Raised to the eighth power) 65536 (2 to 1) for a 2-byte code
6). Furthermore, control codes such as start and stop can be incorporated. These control codes can be converted into codes like character codes.

【0033】辞書102の小型化を目的に、例えば、部
分文字列を2文字に限定することで、文字間の遷移回数
のみを用いた辞書を構成することもできる。図6に示す
ように、遷移前と遷移後の文字の組み合わせからなる2
次元テーブルで構成する。遷移の回数をカウントして、
テーブル内のカウンタを更新すると共に、出現回数の少
ない組み合わせは登録抹消する。カウンタ初期値は、一
定数、あるいは典型的な文書の測定結果に基づき設定で
きる。登録されていない文字が生起した場合には、遷移
回数の初期値として例えば「1」を割り当てて、新たに
登録する。
For the purpose of miniaturizing the dictionary 102, for example, by limiting the partial character string to two characters, a dictionary using only the number of transitions between characters can be constructed. As shown in FIG. 6, the character set 2 is composed of a combination of characters before and after the transition.
Consists of a dimension table. Count the number of transitions,
While updating the counter in the table, the combination with a small number of appearances is deleted. The counter initial value can be set based on a fixed number or a measurement result of a typical document. When an unregistered character occurs, for example, “1” is assigned as an initial value of the number of transitions and newly registered.

【0034】また、一般的な辞書である国語辞書,英和
・和英辞書,人名地名辞書などに登録されている項目
に、生起回数に関する情報を付加して、辞書102を構
成することもできる。例えば、図7に示すように、読み
出し専用のメモリに一般辞書401を、書き換え可能な
メモリに生起回数辞書402を記憶させる。そして、辞
書検索装置305を用いて、一般辞書401から候補文
字列を読み出し、生起回数辞書402から該候補文字の
生起回数に関する情報を読み出す。実際に生起した項目
数が少ない場合には、生起回数辞書402の登録数は、
一般辞書401の項目数に比べて少なくなる。こうし
て、入力支援と文字列の圧縮の両者について、辞書10
2の兼用が可能となり、装置の小型化を実現できる。
The dictionary 102 can be constructed by adding information on the number of occurrences to items registered in a general dictionary such as a Japanese dictionary, an English-Japanese / Japanese-English dictionary, a personal name and place name dictionary, and the like. For example, as shown in FIG. 7, the general dictionary 401 is stored in a read-only memory, and the occurrence count dictionary 402 is stored in a rewritable memory. Then, the candidate character string is read from the general dictionary 401 using the dictionary search device 305, and information on the number of occurrences of the candidate character is read from the occurrence number dictionary 402. When the number of items that have actually occurred is small, the number of registrations in the occurrence count dictionary 402 is
The number is smaller than the number of items in the general dictionary 401. Thus, the dictionary 10 is used for both input support and character string compression.
2 can be used, and the size of the apparatus can be reduced.

【0035】トリー構造,生起回数、あるいは生起確率
などに関する情報はSRAM,FERAM、などの書き
換え可能な半導体メモリに記憶することで、入力文字列
を統計的に測定した結果に基づき辞書の内容を更新する
ことができる。メモリに蓄積するためのデータ構造は、
例えば従来から知られているリンク構造などを利用でき
るが、特に限定するものではない。
Information about the tree structure, the number of occurrences, or the probability of occurrence is stored in a rewritable semiconductor memory such as an SRAM or FERAM, so that the contents of the dictionary are updated based on the result of statistically measuring the input character string. can do. The data structure for storing in memory is
For example, a conventionally known link structure or the like can be used, but is not particularly limited.

【0036】上記のように、本発明によれば、辞書10
2を用いて文字入力支援と符号化処理を実行することが
でき、さらには一般辞書の機能を兼用することもでき
る。
As described above, according to the present invention, the dictionary 10
2, the character input support and the encoding process can be executed, and the function of the general dictionary can be shared.

【0037】(5)符号生成装置103の基本構成 符号生成装置103は、信号入力装置100および文字
解析装置101が入力した信号を、符号語に置き換え
る。本発明は、辞書102にある文字列の生起回数を用
いて最適な符号生成を行う。符号化対象とする部分文字
列は、一文字,単語,文章などの場合があるが、それぞ
れを一つの符号語に変換して出力する。符号化処理のタ
イミングは、部分文字列が入力した毎にリアルタイム型
に実行することも、あらかじめファイルに記憶された文
字列全体を対象にバッチ型に実行することもできる。
(5) Basic Configuration of Code Generation Device 103 The code generation device 103 replaces the signals input by the signal input device 100 and the character analysis device 101 with code words. The present invention performs optimal code generation using the number of occurrences of a character string in the dictionary 102. The partial character string to be encoded may be one character, word, sentence, etc., and each is converted into one codeword and output. The timing of the encoding process can be executed in real time type each time a partial character string is input, or can be executed in batch type for the entire character string stored in a file in advance.

【0038】本発明は、2進数の演算により符号生成を
行い、確率値に基づく小数点演算が不要であることか
ら、簡易な装置構成で高速に信号処理できることが特徴
である。
The present invention is characterized in that a code is generated by a binary operation, and a decimal point operation based on a probability value is not required, so that signal processing can be performed at high speed with a simple device configuration.

【0039】まず、図8を用いて、2進符号(s=2)
の場合の、符号生成手順を説明する。説明に使っている
数値は一例であり、実際の値は条件によって異なる。
First, referring to FIG. 8, a binary code (s = 2)
The code generation procedure in the case of is described. The numerical values used in the description are examples, and the actual values may vary depending on conditions.

【0040】:始め (a)n種類の文字列の生起回数を大きな順にならべて
Ci(i=1〜n)とする。各文字列を構成する文字の
個数は限定しない。一例として、生起回数Cの総数Aは
2のべき乗である1024に設定する。
First, (a) Ci (i = 1 to n) is obtained by arranging the number of occurrences of n types of character strings in descending order. The number of characters constituting each character string is not limited. As an example, the total number A of the number of occurrences C is set to 1024 which is a power of two.

【0041】 A=Σ Ci=1024 …(1) 処理対象とする文字列は生起回数の大きな順であり、初
期値として、i=1を設定する。
A = ΣCi = 1024 (1) The character strings to be processed are in descending order of the number of occurrences, and i = 1 is set as an initial value.

【0042】(b)文字列iの符号語のビット長bi
を、次式で(底は2で、小数点以下は四捨五入する)で
設定する。
(B) Bit length bi of code word of character string i
Is set by the following equation (base is 2 and the decimal part is rounded off).

【0043】 bi=logs(1/pi)=logs(A/Ci)=logs(A)−logs(Ci) =10−log2(Ci) …(2) ここで、演算結果として求められるのは整数値であるこ
とから、上式の対数演算log2(Ci)を小数点以下まで
算出する必要はないことに着目する。例えば、入力Ci
の数値を入力し、あらかじめ計算しておいた対数演算結
果を出力する手段を用意しておくことができる。
Bi = log s (1 / pi) = log s (A / Ci) = log s (A) −log s (Ci) = 10−log 2 (Ci) (2) It is noted that it is not necessary to calculate the logarithmic operation log 2 (Ci) of the above equation to the decimal point, since an integer value is obtained. For example, input Ci
Means for inputting the numerical value of and outputting the logarithm calculation result calculated in advance.

【0044】ただし、四捨の場合に得られる2biを事象
の実際の生起回数に置き換えた際に、事象の生起回数の
大きさの順位に変動がある場合には、biに1を加算す
る(五入にする)。言い換えれば、事象の生起回数に置
き換えても、その順位に変動のない最小桁数の2進数を
求めて、その桁数biを符号語のビット数として利用す
る。
However, when 2 bi obtained in the case of rounding is replaced with the actual number of occurrences of the event, if there is a change in the rank of the number of occurrences of the event, 1 is added to bi ( Goin). In other words, even if the number of occurrences of the event is replaced, the binary number having the minimum number of digits that does not change in the order is obtained, and the number of digits bi is used as the number of bits of the code word.

【0045】小数で与えられる確率値を、整数のビット
数(符号長)に変換する際の、切り上げ処理による圧縮
率の低下が発生する。ここで、確率値piと、設定され
た符号語の持つ最小情報量との差分は次式で求まる Ei=(1/s)bi-pi …(3) 生起回数Ciを用いて符号化誤差を次式で算出する。
When converting a probability value given as a decimal number to an integer number of bits (code length), a reduction in the compression ratio occurs due to round-up processing. Here, the difference between the probability value pi and the minimum information amount of the set code word is obtained by the following equation. Ei = (1 / s) bi-pi (3) The encoding error is calculated using the number of occurrences Ci. It is calculated by the following equation.

【0046】 CEi=A・Ei=A・((1/s)bi-pi) =2(10-bi)-Ci …(4) (c)累積生起回数の値を一定に保つことを目的にし
て、発生する符号化誤差を、残りの文字列(i+1から
nまで)の生起回数から減算する。ここで、符号化誤差
の分配方法は限定するものではないが、分配先の事象の
生起回数の順位に変動がないことを条件とする。例え
ば、残りの文字列の生起回数の割合に比例して分配す
る。
CEi = A · Ei = A · ((1 / s) bi−pi ) = 2 (10−bi) −Ci (4) (c) For the purpose of keeping the value of the cumulative occurrence count constant Then, the generated encoding error is subtracted from the number of occurrences of the remaining character strings (from i + 1 to n). Here, the method of distributing the encoding error is not limited, but is conditioned on the fact that the order of the number of occurrences of the event of the distribution destination does not change. For example, distribution is performed in proportion to the ratio of the number of occurrences of the remaining character strings.

【0047】(d)実際に生起した符号化対象とする文
字列の符号長が生成されるまで、修正済みの生起回数を
用いて(b)からの手順を繰り返す。実際に生起した事
象の処理が終了したら、符号長biを設定して(e)に
進む。
(D) The procedure from (b) is repeated using the corrected number of occurrences until the code length of the actually generated character string to be encoded is generated. When the processing of the event that has actually occurred is completed, the code length bi is set, and the process proceeds to (e).

【0048】(e)符号化対象とする文字列の符号長が
求まったなら、符号のビットを設定する。まず、累積生
起回数を次式で算出する。そして、10ビット(この値
は式(1)の設定例であるlogs(A)=10の場合)の
2進数表現を行い、上位の空きビットは0とする。例え
ば10進数で512は「1000000000」である。そして、
最上位からビット数biを切り出して、符号語を設定す
る。
(E) When the code length of the character string to be coded is determined, code bits are set. First, the cumulative occurrence count is calculated by the following equation. Then, 10 bits (this value is log s (A) = 10 which is a setting example of equation (1)) are expressed in binary notation, and the upper empty bits are set to 0. For example, 512 in decimal notation is "100 000 000 000". And
The number of bits bi is cut out from the highest order, and a code word is set.

【0049】 qi=Σ(2bk)(k=1 to i−1の総和) …(5) :終わり 上記手順が最適である理由は、まず、符号生成手順の各
段階において、生起確率に基づく最短の符号語長が設定
される。この符号語長の設定によって発生する確率値の
誤差を、残りの事象の確率値に配分することで符号化ロ
スは発生しない。この手順を順次繰り返すことで、最適
な符号語を生成できる。
Qi = Σ (2 bk ) (sum of k = 1 to i−1) (5): End The reason why the above procedure is optimal is that, at first, in each stage of the code generation procedure, it is based on the occurrence probability. The shortest codeword length is set. By allocating the error of the probability value generated by setting the codeword length to the probability values of the remaining events, no coding loss occurs. By repeating this procedure sequentially, an optimum codeword can be generated.

【0050】図9は符号生成装置103の構成を示して
いる。信号入力装置100から符号化対象とする信号を
入力し、辞書102から生起回数を入力する。生成した
符号は、符号メモリあるいは伝送装置に出力する。ここ
で、符号長設定部110は、上記(2)式の符号長の設
定を実現する手段である。符号長設定部110に入力す
るのは生起回数を表す信号Ci(i=1〜n)であり、
上記例では最小が0最大が1024の値である。出力す
るのは符号長を示す最小0最大10の値である。この処
理を行う装置構成の一例としては、入力した生起回数を
一時的にレジスタに蓄積し、該レジスタ内容を用いて、
演算結果を変換表にまとめたメモリを読み出すことで符
号語長を設定する。次に、符号ビット設定部111は、
上記(5)式で示される累積生起回数をレジスタに設定し
て、該レジスタ内容を設定された符号語長で切り出すこ
とで、一意に復号可能な符号語を設定する。符号語長変
換部112は、上記(3)式の右辺の第一項の(1/
s)bi を算出する手段であり、符号長設定部110から
入力した符号語長をレジスタに一時格納し、べき乗演算
に相当する値を2進数シフトあるいはビット設定などに
よる2進数生成回路により算出する。
FIG. 9 shows the configuration of the code generation device 103. A signal to be encoded is input from the signal input device 100, and the number of occurrences is input from the dictionary 102. The generated code is output to a code memory or a transmission device. Here, the code length setting unit 110 is means for realizing the setting of the code length in the above equation (2). The input to the code length setting unit 110 is a signal Ci (i = 1 to n) representing the number of occurrences,
In the above example, the minimum is 0 and the maximum is 1024. The values to be output are the minimum 0 and maximum 10 values indicating the code length. As an example of an apparatus configuration for performing this processing, the input number of occurrences is temporarily stored in a register, and
The codeword length is set by reading a memory in which the operation results are summarized in a conversion table. Next, the sign bit setting unit 111
A code word that can be uniquely decoded is set by setting the cumulative number of occurrences represented by the above equation (5) in a register and cutting out the contents of the register with the set code word length. The codeword length conversion unit 112 calculates (1/3) of the first term on the right side of the above equation (3).
s) means for calculating bi , which temporarily stores the code word length input from the code length setting unit 110 in a register, and calculates a value corresponding to the exponentiation operation by a binary number generating circuit such as a binary number shift or bit setting. .

【0051】生起回数修正部113は、文字列の生起回
数を一時的に記憶すると共に、上記(4)式の符号化誤
差を算出して、符号語生成の終わっていない残りの文字
列の生起回数の修正を行う手段である。これらの装置
は、符号生成手順に基づき管理装置115によって、生
起回数の大きな信号から順次に繰り返して演算を行い、
入力信号に対応する符号が生成された時点で処理終了し
て、符号出力する。また管理装置115は、初期化,信
号入力,符号出力などの入出力制御と、各装置間の処理
タイミング制御を行う。
The number-of-occurrence correcting section 113 temporarily stores the number of occurrences of a character string, calculates the encoding error of the above equation (4), and generates the remaining character strings for which codeword generation has not been completed. This is a means for correcting the number of times. In these devices, the management device 115 performs the operation in order from the signal with the largest number of occurrences, based on the code generation procedure.
Processing is terminated when a code corresponding to the input signal is generated, and the code is output. The management device 115 also controls input / output such as initialization, signal input, and code output, and controls processing timing between the devices.

【0052】図10に示すように、生起回数表は書き換
え可能なメモリで構成し、初期値は辞書102から読み
出した生起回数を設定する。符号生成手順に従って一つ
の符号長を算出する毎に、生起回数表を書き換える。こ
のため、修正値算出回路により修正値を生成し、修正値
レジスタに一時格納して、該レジスタ内容に基づき生起
回数表の書き換えを行う。
As shown in FIG. 10, the occurrence count table is constituted by a rewritable memory, and the occurrence count read from the dictionary 102 is set as an initial value. Each time one code length is calculated according to the code generation procedure, the occurrence count table is rewritten. Therefore, a correction value is generated by a correction value calculation circuit, temporarily stored in a correction value register, and the occurrence count table is rewritten based on the contents of the register.

【0053】図11に、修正値算出回路の構成例を示
す。まず、符号語長変換部112が生成した上記(3)
式の右辺の第一項の(1/s)bi 、および生起回数を入
力する。そして、生起回数レジスタの内容と比較して上
記(4)式の符号化誤差を算出する。次に、生起回数の
大きさに比例した分配比率に基づき符号化誤差の分配誤
差を算出する。ここで分配誤差は、総計が(1/s)bi
以下の2進数である。そして、生起回数表の内容に分配
誤差を加減算して修正値を算出する。これらの処理は管
理装置115によって制御する。
FIG. 11 shows a configuration example of the correction value calculation circuit. First, the above (3) generated by the codeword length conversion unit 112
Enter (1 / s) bi of the first term on the right side of the equation and the number of occurrences. Then, the coding error of the above equation (4) is calculated by comparing with the content of the occurrence count register. Next, the distribution error of the encoding error is calculated based on the distribution ratio proportional to the number of occurrences. Here, the distribution error is (1 / s) bi
It is the following binary number. Then, a correction value is calculated by adding / subtracting the distribution error to / from the content of the occurrence count table. These processes are controlled by the management device 115.

【0054】本発明の特徴は、上記符号生成の手順およ
び装置構成において、全ての演算を整数値(2進数)で
扱うことである。小数点を扱う信号処理手順あるいは処
理装置は、例えば浮動小数点演算回路が必要であるのに
対して、本発明は2進の整数演算で良いため装置構成が
容易であると共に高速な処理が可能となる。また、例え
ば式(2)に基づく符号語長の算出を、図12(1)に
示すような変換表に設定し、あらかじめ図12(2)に
示すようなメモリに記憶しておき、入力信号をアドレス
としてメモリ読み出しすることで、符号長を得る。
A feature of the present invention is that, in the above code generation procedure and apparatus configuration, all operations are handled by integer values (binary numbers). A signal processing procedure or a processing device that handles a decimal point requires, for example, a floating-point arithmetic circuit. On the other hand, the present invention requires only binary integer arithmetic, so that the device configuration is easy and high-speed processing is possible. . Also, for example, the calculation of the codeword length based on the equation (2) is set in a conversion table as shown in FIG. 12A, and stored in a memory as shown in FIG. Is read out from the memory as an address to obtain the code length.

【0055】なお、これらの装置構成の動作内容は、プ
ログラム制御のプロセッサによる信号処理によっても実
現できることは言うまでもない。
It is needless to say that the operation contents of these device configurations can also be realized by signal processing by a processor under program control.

【0056】次に図13を用いて、実際の数値を用いた
2進符号の生成例を示す。図中には、8種の部分文字列
文字列について、登録番号1と2の符号生成例を示して
ある。初期設定として、それぞれの文字列の生起回数を
1に設定し、その後、入力する文字列の生起回数の計数
値を設定していく。そして、生起回数の総数が2のべき
乗である1024とする。
Next, an example of generating a binary code using actual numerical values will be described with reference to FIG. In the figure, code generation examples of registration numbers 1 and 2 are shown for eight types of partial character strings. As an initial setting, the number of occurrences of each character string is set to 1, and thereafter, a count value of the number of occurrences of the input character string is set. The total number of occurrences is 1024, which is a power of two.

【0057】:始め (a)n=8種類の文字列の生起回数Ciを、大きさの
順番に、500,200,100,100,50,5
0,23,1とする。最後の文字列(生起回数Ci=
1)は、初期設定した値が残っている場合を示し、実際
には入力しなかった例である。総数Aは1024。
First, (a) the number of occurrences Ci of n = 8 types of character strings is changed to 500, 200, 100, 100, 50, and 5 in the order of size.
0, 23, and 1. The last character string (occurrence number Ci =
1) shows a case where the initially set value remains, and is an example in which the value is not actually input. The total number A is 1024.

【0058】(b)i=1の文字列の生起回数は500
であるから、式(1a)から符号長はbi=1となる。
bi=512を、元の生起回数と置き換えても順位変
動はない。式(2a)から符号化誤差Cei=12であ
る。
(B) The number of occurrences of a character string of i = 1 is 500
From Equation (1a), the code length is bi = 1.
Even if 2 bi = 512 is replaced with the original number of occurrences, there is no rank change. From the equation (2a), the coding error Cei = 12.

【0059】(c)符号化誤差を残りの文字列(i=2
から8まで)の生起回数に分配して修正する。具体的に
は、文字列i=1の生起回数は符号化誤差Cei=12
で示されるだけ少な目に設定されたことになっているた
め、残りの文字列の生起回数から12を減算する。前記
したように分配方法は限定していないので、一例を示し
てある。
(C) The encoding error is converted to the remaining character string (i = 2
From 8 to 8) and correct. Specifically, the number of occurrences of the character string i = 1 is determined by the coding error Cei = 12.
Therefore, 12 is subtracted from the number of occurrences of the remaining character strings. Since the distribution method is not limited as described above, an example is shown.

【0060】(d)実際に入力した文字列がi=1でな
い場合は、手順(b)に戻り、次の文字列の処理を行
う。一方、入力した文字列がi=1の場合には、符号長
b1=1を設定して手順(e)に進む。
(D) If the actually input character string is not i = 1, the process returns to step (b) to process the next character string. On the other hand, when the input character string is i = 1, the code length b1 = 1 is set, and the procedure proceeds to the step (e).

【0061】(e)実際に入力した文字列がi=1の場
合、符号長はb1=1、累積生起回数はq1=0であ
る。10ビットの2進数で累積生起回数を表すと「00000
00000」であり、符号長b1=1ビットを上位から取り出
して「0」が符号語となる。また、文字列がi=2の場
合、符号長はb2=2、累積生起回数はq2=512で
ある。10ビットの2進数で累積生起回数を表すと「10
00000000」であり、上位から2ビットを取り出して「1
0」が符号語となる。
(E) When the character string actually input is i = 1, the code length is b1 = 1 and the cumulative number of occurrences is q1 = 0. When the cumulative number of occurrences is represented by a 10-bit binary number, "00000
00000 ", and code length b1 = 1 bit is taken out from the upper bit, and" 0 "is a code word. When the character string is i = 2, the code length is b2 = 2 and the cumulative occurrence count is q2 = 512. When the cumulative occurrence count is represented by a 10-bit binary number, "10
00000000 ", and takes out 2 bits from the upper
"0" is a code word.

【0062】:終わり (6)復号化処理 図14は処理装置の符号化処理を行う符号化部の構成例
を示したものである。復号化装置は、文字列解析装置1
01,辞書102,符号生成装置103、および一致判
定装置104から構成される。ここで、文字列解析装置
101,辞書102,符号生成装置103は、符号化部
と同じ構成である。符号メモリ105に蓄積した符号語
を読み込んで、登録番号順に生成した符号語が同一であ
るか否かの判定を順次に行い、同じであれば、該登録番
号に対応する文字列を出力する。そして、復号した信号
を測定することで文字列の生起回数を算出し、符号化装
置と同一のトリー構造を作成して辞書に蓄積する。この
辞書を参照することで、可逆的に信号再生できる。ここ
で、初期設定等についても、符号化処理と同一の内容を
同一のタイミングで実行する。
End: (6) Decoding Process FIG. 14 shows an example of the configuration of an encoding unit that performs the encoding process of the processing device. The decoding device is a character string analysis device 1
1, a dictionary 102, a code generation device 103, and a match determination device 104. Here, the character string analysis device 101, the dictionary 102, and the code generation device 103 have the same configuration as the coding unit. The codewords stored in the code memory 105 are read, and it is sequentially determined whether or not the codewords generated in the order of the registration numbers are the same. If they are the same, a character string corresponding to the registration number is output. Then, the number of occurrences of the character string is calculated by measuring the decoded signal, and the same tree structure as that of the encoding device is created and stored in the dictionary. The signal can be reversibly reproduced by referring to this dictionary. Here, the same contents as those of the encoding process are executed at the same timing for the initial setting and the like.

【0063】復号化の手順を図15に示す。それぞれの
ステップは符号化処理の内容と同じであり、最後に入力
した符号語と、登録番号順に生成した符号語が同一であ
るか否かの判定を行うステップを設けている。
FIG. 15 shows the decoding procedure. Each step is the same as the content of the encoding process, and includes a step of determining whether or not the last input code word is the same as the code word generated in the order of the registration number.

【0064】本発明の特徴は、上記手順および装置構成
において、符号化処理と同様に、全ての演算を整数値
(2進数)で扱うことである。小数点を扱う信号処理手
順あるいは処理装置に比べて、構成が容易となると共に
高速な処理が可能となる。
A feature of the present invention is that, in the above procedure and apparatus configuration, all operations are handled by integer values (binary numbers) as in the case of the encoding processing. Compared with a signal processing procedure or a processing device that handles a decimal point, the configuration is easy and high-speed processing is possible.

【0065】次に、入力した一つの符号語についての、
復号化処理の基本的な数値例を示す。生起回数はあらか
じめ設定されているものとする。
Next, for one input code word,
A basic numerical example of the decoding process is shown. It is assumed that the number of occurrences is set in advance.

【0066】:始め (a)既に復号した文字列の測定結果から、n=8種類
の文字列の生起回数Ciが、大きさの順番に、500,
200,100,100,50,50,23,1である
とする。総数Aは1024。
The beginning (a) From the measurement result of the already decoded character string, the number of occurrences Ci of n = 8 types of character strings is 500,
200, 100, 100, 50, 50, 23, and 1. The total number A is 1024.

【0067】(b)i=1の文字列の生起回数は500
であるから、式(1a)から符号長はbi=1となる。
bi=512を、元の生起回数と置き換えても順位変動
はない。式(2a)から符号化誤差Cei=12であ
る。
(B) The number of occurrences of a character string with i = 1 is 500
From Equation (1a), the code length is bi = 1.
Even if 2 bi = 512 is replaced with the original number of occurrences, there is no order change. From the equation (2a), the coding error Cei = 12.

【0068】(c)符号化誤差を残りの文字列(i=2
から8まで)の生起回数に分配して修正する。具体的に
は、文字列i=1の生起回数は12だけ多く設定された
ことになっているため、残りの文字列の生起回数から1
2を減算する。分配方法は限定していないので、一例を
示してある。
(C) Encoding error is converted to the remaining character string (i = 2
From 8 to 8) and correct. More specifically, since the number of occurrences of the character string i = 1 is set to be larger by 12, the number of occurrences of the remaining character string is 1
Subtract 2 An example is shown because the distribution method is not limited.

【0069】(d)符号長はbi=1,累積生起回数は
q1=0、であるから、「0」が符号語となる。
(D) Since the code length is bi = 1 and the cumulative occurrence count is q1 = 0, "0" is the code word.

【0070】(e)入力した符号系列と生成した符号語
の両者を、ビット数bkの長さに渡って比較する。一致
していれば、符号語は文字列i=1を示すものとして復
号処理を終了する。不一致の場合には、修正済みの生起
回数を用いて次の文字列について(b)からの手順を繰
り返す。
(E) Both the input code sequence and the generated code word are compared over the length of the number of bits bk. If they match, the code word indicates the character string i = 1, and the decoding process ends. If they do not match, the procedure from (b) is repeated for the next character string using the corrected occurrence count.

【0071】:終わり ある生起回数以下、あるいは、ある順位以下の信号の生
起回数を均一な数値に置き換えることで、符号ビットの
生成を簡易化することができる。例えば、文字列が25
6種類(2の8乗)ある場合に、上位の8種類の文字列
は測定した生起回数を利用することにして、残りの24
8種類の事象については均一の生起回数を割り当てる。
ただし、生起回数の総数は維持しなければならない。均
一な生起回数の文字列(上記の例では、第9番目から2
56番目まで)には、均一な符号語長を割り当てること
ができることを利用して、符号化および復号化の処理を
高速に実行できる。
End: By replacing the number of occurrences of a signal having a certain number of occurrences or less, or a signal having a certain number of ranks or less with a uniform numerical value, the generation of code bits can be simplified. For example, if the character string is 25
When there are six types (2 to the eighth power), the upper eight types of character strings use the measured number of occurrences, and the remaining 24
A uniform number of occurrences is assigned to eight types of events.
However, the total number of occurrences must be maintained. A character string with a uniform number of occurrences (in the example above,
(Up to 56th), it is possible to perform encoding and decoding processing at high speed by utilizing the fact that a uniform codeword length can be allocated.

【0072】(7)装置構成例 本発明を用いた装置構成例を説明する。(7) Example of Device Configuration An example of a device configuration using the present invention will be described.

【0073】図16は、複数の情報処理装置からなるシ
ステムの構成を示したものである。本システムは、伝送
路で接続された、送信装置と受信装置の2者間で、効率
の良いデータ伝送を行う構成例を示す。送信装置と受信
装置の両者が備える辞書は、初期化条件,更新方法を両
者共通に設定しておく。これは、符号伝送に先立って相
互通信に基づき設定することも、あるいは、あらかじめ
装置に組み込む初期化プログラムに基づき設定すること
もできる。
FIG. 16 shows the configuration of a system including a plurality of information processing apparatuses. This system shows a configuration example in which efficient data transmission is performed between a transmitting device and a receiving device connected by a transmission path. In the dictionaries provided in both the transmitting device and the receiving device, an initialization condition and an updating method are set in common for both. This can be set based on mutual communication prior to code transmission, or can be set based on an initialization program incorporated in the device in advance.

【0074】辞書内容は、固定的に利用することも、信
号内容に基づき更新することもできる。辞書内容を更新
する場合には、送信側は符号化伝送の済んだ信号に基づ
き辞書を更新する。一方受信側は、受信復号した信号に
基づき辞書を更新する。こうして、両者の辞書の更新内
容とタイミングを常に一致させることで、送信装置が伝
送した符号を、受信装置は誤りなく復号して信号を再生
することができる。
The dictionary contents can be used fixedly or updated based on the signal contents. When updating the dictionary contents, the transmitting side updates the dictionary based on the coded and transmitted signal. On the other hand, the receiving side updates the dictionary based on the received and decoded signal. In this way, the updated content of both dictionaries is always matched with the timing, so that the code transmitted by the transmitting device can be decoded without error by the receiving device to reproduce the signal.

【0075】操作者が、例えばキーボードで文字入力す
る速度は、伝送路のデータ転送速度に比べて遅い。この
ような場合に、符号語を伝送するために伝送路を占有す
ることは、伝送路の使用効率は低くなる。そこで、符号
を伝送する方式として、通信手順の一つとして知られて
いるパケット型通信を利用できる。これは、伝送するデ
ータ量(例えばバイト数)に課金が行われるものであ
り、電話のような接続時間に関係しない。このため、操
作者がリアルタイムに入力する信号を、入力タイミング
に基づき細切れにして送ることに適している。本発明で
は、リアルタイム型に入力して圧縮した符号を、パケッ
ト型通信で伝送することで、伝送コストの削減を実現で
きる。
The speed at which the operator inputs characters using, for example, a keyboard is slower than the data transfer speed of the transmission path. In such a case, occupying the transmission path for transmitting the codeword reduces the efficiency of use of the transmission path. Therefore, packet-type communication known as one of communication procedures can be used as a method of transmitting codes. In this method, the amount of data to be transmitted (for example, the number of bytes) is charged, and is not related to a connection time such as a telephone. Therefore, it is suitable for sending a signal input by the operator in real time in a fragmented manner based on the input timing. According to the present invention, the transmission cost can be reduced by transmitting a code that is input and compressed in real time by packet communication.

【0076】図17は、符号化部と復号化部を内蔵する
情報処理装置の構成例である。信号を圧縮することで、
大容量のデータを蓄積できることが本装置の特徴であ
る。符号メモリ105は、符号語を蓄積する手段であ
り、半導体メモリ,ディスク装置などを利用できる。符
号化処理、および復号化処理の動作は、既に説明した通
りである。
FIG. 17 shows an example of the configuration of an information processing apparatus having a built-in encoding unit and decoding unit. By compressing the signal,
The feature of this device is that it can store a large amount of data. The code memory 105 is a means for storing code words, and can use a semiconductor memory, a disk device, or the like. The operations of the encoding process and the decoding process are as described above.

【0077】ここで、符号化処理部と復号化処理部を構
成する手段を、全て別々に用意することもできるが、一
部を兼用することもできる。符号化と復号化が同時動作
しないようにタイミング制御を行うことで、文字列解析
装置101,辞書102,符号生成装置103を、符号
化処理と復号化処理の両者に共用することができる。つ
まり、信号の入力と出力を同時に実行しないことで、情
報処理装置の回路規模を削減できる。
Here, all means for constituting the encoding processing unit and the decoding processing unit can be prepared separately, but a part of them can be shared. By performing timing control so that encoding and decoding do not operate at the same time, the character string analysis device 101, the dictionary 102, and the code generation device 103 can be shared for both encoding and decoding. That is, by not simultaneously executing input and output of signals, the circuit scale of the information processing apparatus can be reduced.

【0078】(8)携帯情報端末の構成例 図18(1)に、情報処理装置を携帯情報端末に適用し
た場合の一例を示す。信号入力装置100は、表示装置
300とペン型入力装置303,手書き入力した文字を
文字コードに変換する文字認識装置304から構成され
る。辞書102の内容は、文字列解析装置101によって
参照され、候補文字列を読み出して表示装置300に表
示する。また、辞書内容は、文字認識装置304からも
参照されて、手書き入力された文字の文字コード変換に
おける、認識率の向上に利用することができる。さら
に、文字認識装置304において、区別のつきにくい手
書き文字を活字文字に変換する処理において利用するこ
とで、そして、入力した文字列などを符号生成装置10
3でリアルタイムで圧縮データに変換することで、符号
メモリ105に多量のデータを効率よく蓄積することが
できる。このように、本発明では、辞書102の内容
を、文字列入力の支援と共に、入力した文字列の符号化
処理に利用する。
(8) Configuration Example of Portable Information Terminal FIG. 18A shows an example in which the information processing apparatus is applied to a portable information terminal. The signal input device 100 includes a display device 300, a pen-type input device 303, and a character recognition device 304 that converts characters input by handwriting into character codes. The contents of the dictionary 102 are referred to by the character string analyzer 101, and the candidate character strings are read and displayed on the display device 300. The dictionary contents are also referred to by the character recognition device 304 and can be used to improve the recognition rate in character code conversion of characters input by handwriting. Furthermore, the character recognition device 304 uses the handwritten characters that are difficult to distinguish in a process of converting the characters into printed characters.
By converting the data into compressed data in real time in step 3, a large amount of data can be efficiently stored in the code memory 105. As described above, in the present invention, the contents of the dictionary 102 are used for the encoding process of the input character string together with the support of the character string input.

【0079】辞書102の内容は、入力した文字列の内
容に基づき更新していくことができるが、あるいは、初
期設定の辞書内容を固定的に利用することもできる。
The contents of the dictionary 102 can be updated based on the contents of the input character string, or the default dictionary contents can be fixedly used.

【0080】図18(2)に示すように、操作者がペン型
入力手段303を用いて1文字ずつ入力した文字列30
1から、あらかじめ用意した辞書に基づく候補文字列3
02を取り出して、表示装置300に表示する。操作者
は、表示された候補文字302から一つを選択する。表示
した候補の中に該当する文字列が無い場合には、操作者
が一文字ずつペン型入力装置303を用いて入力する。
図中では、英文入力の例として、主語「I」に引き続い
て動詞「HAVE」を入力するつもりで、途中の「H
A」まで入力した時点の動作を示す。辞書102から、
「HA」から開始する1人称単数の動詞の候補文字列を
取り出し、「HAVE」「HAD」「HATE」を表示してい
る例である。こうして、操作者は全ての文字列を入力す
ることなく、候補文字を選択することで、簡易に正確な
入力を実現できる。信号入力装置がキーボードである場
合も同様な手順を実行できる。そして、入力文字列が確
定したタイミングで圧縮データに変換してメモリに蓄積
する。
As shown in FIG. 18B, a character string 30 input by the operator using the pen-type input means 303 character by character.
From 1, a candidate character string 3 based on a dictionary prepared in advance
02 is taken out and displayed on the display device 300. The operator selects one of the displayed candidate characters 302. If there is no corresponding character string in the displayed candidates, the operator inputs one character at a time using the pen-type input device 303.
In the figure, as an example of English sentence input, the intention is to input the verb "HAVE" following the subject "I", and enter "H" in the middle.
A shows the operation at the time when "A" is input. From dictionary 102,
This is an example of extracting a first-person singular verb candidate character string starting from “HA” and displaying “HAVE”, “HAD”, and “HATE”. Thus, the operator can easily and accurately input by selecting candidate characters without inputting all character strings. A similar procedure can be performed when the signal input device is a keyboard. Then, at the timing when the input character string is determined, it is converted into compressed data and stored in the memory.

【0081】手書き文字認識装置を用いる場合に、手書
き文字を文字コードに変換する文字認識装置304にお
いても、辞書102から取り出した候補文字列を利用す
ることで、認識精度を向上させることもできる。
When the handwritten character recognition device is used, the recognition accuracy can also be improved by using the candidate character strings extracted from the dictionary 102 in the character recognition device 304 that converts handwritten characters into character codes.

【0082】上記構成を実現する回路構成例を、図19
に示す。CPU,読み出し専用の不揮発性メモリ,書き
換え可能なメモリ,外部入出力装置に加えて、手書き文
字入力を行うための手段として、タブレットと表示装置
と入出力制御装置を介して組み合わせる。読み出し専用
の不揮発性メモリには、CPUの動作を記述するプログ
ラム,辞書,伝送制御プロトコルなどを書き込んでお
く。一方、書き換え可能なメモリは、SRAM,FER
AMなどで構成し、演算途中のデータ,測定結果に基づ
く文字列の生起回数,入力文字列などを記憶する。タブ
レットと表示装置は、画素位置が同期するように重ねあ
わせることで、入力と表示位置が一致する。このような
携帯情報端末の構成では、操作者の文字入力手段がタブ
レットに限られるため、本発明の特徴であるリアルタイ
ム型の入力支援と入力データの圧縮を効率よく実現でき
る。例えば、人名とアドレスと電話番号などを、前記入
力支援を行いながら文字入力し、圧縮処理を行ってメモ
リ蓄積することで、多量のデータを記憶できるようにな
る。また、バッチ型の場合には、文書データなどを一括
して入力するため入力支援が不要であり、文字列解析を
行いながら圧縮処理を行いメモリ蓄積する。
An example of a circuit configuration for realizing the above configuration is shown in FIG.
Shown in In addition to a CPU, a read-only non-volatile memory, a rewritable memory, and an external input / output device, the tablet, the display device, and the input / output control device are combined as means for inputting handwritten characters. A program describing the operation of the CPU, a dictionary, a transmission control protocol, and the like are written in the read-only nonvolatile memory. On the other hand, rewritable memories are SRAM, FER
It is composed of AM or the like, and stores data in the middle of calculation, the number of occurrences of a character string based on a measurement result, an input character string, and the like. By superimposing the tablet and the display device so that the pixel positions are synchronized, the input and the display position match. In such a configuration of the portable information terminal, since the character input means of the operator is limited to the tablet, real-time input support and compression of input data, which are features of the present invention, can be efficiently realized. For example, a large amount of data can be stored by inputting characters such as a personal name, an address, and a telephone number while performing the input support, performing compression processing, and storing the data in a memory. Further, in the case of the batch type, input support is unnecessary because document data and the like are input collectively, and compression processing is performed while character string analysis is performed, and storage is performed in a memory.

【0083】例えば、かな漢字変換において、同音異義
語の複数の漢字候補を提示することで、入力操作者のあ
いまいな記憶に基づく変換操作を支援する。また、入力
した文字列については、符号語として蓄積あるいは伝送
することで、蓄積容量の削減あるいは伝送時間の短縮を
実現できる。通信手段を用いて伝送する場合には、受信
側装置は、符号語を順次復号していくことで、送信側と
全く同じ文字列を再現できる。このように、辞書102
を用いて、操作者の入力支援と共に、データ圧縮を行う
ことができる。
For example, in the kana-kanji conversion, by presenting a plurality of kanji candidates of the same homonym, the conversion operation based on the ambiguous memory of the input operator is supported. Further, by storing or transmitting the input character string as a code word, it is possible to reduce the storage capacity or the transmission time. In the case of transmission using communication means, the receiving device can reproduce exactly the same character string as the transmitting device by sequentially decoding codewords. Thus, the dictionary 102
, Data compression can be performed together with input support by the operator.

【0084】(9)圧縮データの編集処理 メモリ蓄積した圧縮データを対象にして、書き換え,移
動,削除などの編集をする場合の動作を説明する。本発
明では、生成する符号語は可変長であること、および符
号化処理において参照する辞書内容は信号入力に基づい
て逐次に更新することから、圧縮データは先頭から順次
に復号しないと信号再生ができない。このため基本的に
は、圧縮データの一部を取り出して、部分的な文字列を
復号することはできない。図20を用いて、幾つかの方
法を以下に述べる。
(9) Processing for Editing Compressed Data The operation for editing such as rewriting, moving, and deleting compressed data stored in the memory will be described. In the present invention, since the generated codeword is of variable length, and the dictionary contents referred to in the encoding process are sequentially updated based on the signal input, the compressed data must be decoded sequentially from the beginning to reproduce the signal. Can not. Therefore, basically, it is not possible to extract a part of the compressed data and decode a partial character string. Some methods are described below with reference to FIG.

【0085】第一の方法は、編集メモリを付加した装置
構成を用いる。入力文字列は、前記したリアルタイム型
の符号化処理をして符号メモリに蓄積する。符号メモリ
の内容を再度編集するには、符号語を復号化処理して編
集メモリに書き込み、該編集メモリに蓄積した文字列を
対象にして編集処理する。編集後の文字列は、バッチ型
の符号化処理を行い、符号メモリに蓄積する。この方法
は、編集処理を行うには、符号データ全体を対象に復号
化と符号化をバッチ型の信号処理で繰り返す。第二の方
法は、図中の符号メモリ105の内容に示すように、圧
縮処理の途中で、符号データの区切りを示す区切り信号
の挿入を行う。こうして圧縮データを、区切り信号ごと
に復号して編集メモリに蓄積して、編集処理を行う。こ
れにより文字列全体を復号すること無く、編集対象を含
む部分文字列のみを復号して編集を可能とする。編集後
の文字列は、再び圧縮処理して符号メモリに蓄積する。
ここで、編集処理によって圧縮データの容量は変化する
ことに注意して、データ管理手段に基づきメモリ蓄積す
る。上記の区切り処理を行うタイミングは、一定数の文
字毎に設定する方法,文章中の段落・改ページなどに基
づき設定する方法、などとすることができる。圧縮デー
タ中に挿入する区切り信号は、特有のビットパタンとす
ることで、容易に検出できる。
The first method uses a device configuration to which an editing memory is added. The input character string is stored in a code memory by performing the above-described real-time type encoding processing. In order to edit the contents of the code memory again, the code word is decoded, written into the edit memory, and the character string stored in the edit memory is edited. The edited character string is subjected to a batch type encoding process and stored in a code memory. In this method, in order to perform an editing process, decoding and encoding of the entire code data are repeated by batch-type signal processing. In the second method, as shown in the content of the code memory 105 in the figure, a delimiter signal indicating a delimiter of code data is inserted during the compression process. In this way, the compressed data is decoded for each delimiter signal, stored in the editing memory, and edited. As a result, it is possible to edit only the partial character string including the edit target without decoding the entire character string. The edited character string is compressed again and stored in the code memory.
Here, note that the capacity of the compressed data changes due to the editing process, and the compressed data is stored in the memory based on the data management means. The timing of performing the above-described delimiter processing may be a method of setting for each of a fixed number of characters, a method of setting based on paragraphs / page breaks in a sentence, and the like. The delimiter signal inserted into the compressed data can be easily detected by using a unique bit pattern.

【0086】[0086]

【発明の効果】本発明によれば、順次に入力する文字列
を最適符号に変換して、効率の良い圧縮を実現すると共
に簡易な装置構成で高速に符号生成を実現できる。
According to the present invention, it is possible to convert a character string to be sequentially input into an optimum code, realize efficient compression, and realize code generation at high speed with a simple apparatus configuration.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の処理装置の符号化処理を行う部分の基
本構成を示す図である。
FIG. 1 is a diagram illustrating a basic configuration of a portion that performs an encoding process of a processing device according to the present invention.

【図2】信号入力装置の手順を示す図である。FIG. 2 is a diagram illustrating a procedure of a signal input device.

【図3】情報処理装置の入出力部,符号生成部の構成を
示した図である。
FIG. 3 is a diagram illustrating a configuration of an input / output unit and a code generation unit of the information processing apparatus.

【図4】情報処理装置の入力部と符号生成部を示した図
である。
FIG. 4 is a diagram illustrating an input unit and a code generation unit of the information processing apparatus.

【図5】2文字遷移の辞書の構成を示した図である。FIG. 5 is a diagram showing a configuration of a two-character transition dictionary.

【図6】辞書の構成を示した図である。FIG. 6 is a diagram showing a configuration of a dictionary.

【図7】文字入力の処理手順を示した図である。FIG. 7 is a diagram showing a processing procedure of character input.

【図8】符号生成手順を示した図である。FIG. 8 is a diagram showing a code generation procedure.

【図9】符号化装置の構成を示した図である。FIG. 9 is a diagram illustrating a configuration of an encoding device.

【図10】生起回数修正部の回路構成を示した図であ
る。
FIG. 10 is a diagram showing a circuit configuration of an occurrence number correction unit.

【図11】修正値算出回路の構成を示した図である。FIG. 11 is a diagram showing a configuration of a correction value calculation circuit.

【図12】符号長変換表の構成を示した図である。FIG. 12 is a diagram showing a configuration of a code length conversion table.

【図13】符号生成の数値例を示した図である。FIG. 13 is a diagram illustrating a numerical example of code generation.

【図14】情報処理装置の復号化を行う復号化部の構成
例を示した図である。
FIG. 14 is a diagram illustrating a configuration example of a decoding unit that performs decoding of the information processing device.

【図15】復号手順を示した図である。FIG. 15 is a diagram showing a decoding procedure.

【図16】情報処理システムの構成を示した図である。FIG. 16 is a diagram illustrating a configuration of an information processing system.

【図17】情報処理装置の構成を示した図である。FIG. 17 is a diagram illustrating a configuration of an information processing apparatus.

【図18】携帯情報端末に適用した場合の構成を示した
図である。
FIG. 18 is a diagram showing a configuration when applied to a portable information terminal.

【図19】携帯情報端末の回路構成を示した図である。FIG. 19 is a diagram showing a circuit configuration of a portable information terminal.

【図20】圧縮データの編集装置に適用した場合の構成
を示した図である。
FIG. 20 is a diagram showing a configuration when applied to a compressed data editing device.

【符号の説明】 100…信号入力装置、101…文字列解析装置、10
2…辞書、103…符号生成装置、104…一致判定装
置、105…符号メモリ、106…入力文字バッファ、
107…候補文字バッファ、110…符号長設定装置、
111…符号ビット設定部、112…符号語長変換部、
113…生起回数修正部、115…管理装置。
[Description of Signs] 100: Signal input device, 101: Character string analysis device, 10
2 dictionary, 103 code generation device, 104 match determination device, 105 code memory, 106 input character buffer,
107: candidate character buffer; 110: code length setting device
111: code bit setting unit; 112: code word length conversion unit
113: occurrence frequency correction unit; 115: management device.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 豊田 康隆 茨城県日立市大みか町七丁目1番1号 株 式会社日立製作所日立研究所内 Fターム(参考) 5J064 AA02 BB05 BC01 BC28 BD01 ────────────────────────────────────────────────── ─── Continuing on the front page (72) Inventor Yasutaka Toyoda 7-1-1, Omika-cho, Hitachi City, Ibaraki Prefecture F-term in Hitachi Research Laboratory, Hitachi Ltd. 5J064 AA02 BB05 BC01 BC28 BD01

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】少なくとも文字が入力される入力部と、 文字列とこの文字列の生起回数及び文字列毎に与えられ
る識別番号とを対応付けて記憶する辞書と、 前記辞書に記憶された文字列について生起回数が大きい
文字列から順に、生起回数に基づいて符号語長を求め、
この符号語長から対応する識別番号の符号語を生成する
と共に、前記求めた符号語長から符号化誤差を求めこの
符号化誤差から他の文字列の生起回数を補正する符号化
部とを有する情報処理装置。
An input unit for inputting at least a character, a dictionary for storing a character string in association with the number of occurrences of the character string and an identification number given to each character string, and a character stored in the dictionary The code word length is calculated based on the number of occurrences in order from the character string having the highest number of occurrences for
A coding unit that generates a code word of a corresponding identification number from the code word length, obtains a coding error from the obtained code word length, and corrects the number of occurrences of another character string from the coding error. Information processing device.
【請求項2】請求項1において、 前記符号化部は、前記生起回数から求めた符号長の整数
部分から符号語を生成する情報処理装置。
2. The information processing apparatus according to claim 1, wherein the encoding unit generates a codeword from an integer part of a code length obtained from the number of occurrences.
【請求項3】請求項1において、 前記入力部から連続して入力される文字をあらかじめ定
めた規則に基づいて文字列ごとに区切る分解手段を有
し、 前記辞書は、前記分解手段によって分解された文字列、
この文字列の生起回数、文字列ごとに与えられる識別番
号とを対応付けて記憶する情報処理装置。
3. The apparatus according to claim 1, further comprising: a decomposing unit that divides characters continuously input from the input unit into character strings based on a predetermined rule, wherein the dictionary is decomposed by the decomposing unit. String,
An information processing apparatus that stores the number of occurrences of this character string and an identification number given to each character string in association with each other.
【請求項4】請求項1において、 前記入力部は手書きで文字が入力され、前記表示部は前
記入力部に入力された文字を表示し、前記入力部と前記
表示部とが一体化された情報処理装置。
4. The input unit according to claim 1, wherein the input unit receives handwritten characters, the display unit displays the characters input to the input unit, and the input unit and the display unit are integrated. Information processing device.
【請求項5】複数の情報処理装置が接続された情報処理
システムであって、 少なくとも1つの情報処理装置は、文字が入力される入
力部と、文字列とこの文字列の生起回数及び文字列毎に
与えられる識別番号とを対応付けて記憶する辞書と、前
記辞書に記憶された文字列を表示する表示部と、前記辞
書に記憶された文字列について生起回数が大きい文字列
から順に、生起回数に基づいて対応する識別番号の符号
語を生成する符号化部と、前記生成された符号語を外部
に送信する送信部とを有し、 少なくとも1つの情報処理装置は、外部から前記符号を
受信する受信部と、文字列とこの文字列の生起回数及び
文字列毎に与えられる識別番号とを対応付けて記憶する
辞書と、前記受信部に入力された符号を復号し、識別番
号を生成する復号化部と、前記生成された識別番号に基
づいて前記辞書から対応する文字列を抽出する抽出部と
を有する情報処理システム。
5. An information processing system to which a plurality of information processing apparatuses are connected, wherein at least one of the information processing apparatuses includes an input unit into which a character is input, a character string, a number of occurrences of the character string, and a character string. A dictionary for storing identification numbers assigned to respective dictionaries in association with each other; a display unit for displaying character strings stored in the dictionary; An encoding unit that generates a codeword of a corresponding identification number based on the number of times, and a transmission unit that transmits the generated codeword to the outside, at least one information processing device transmits the code from the outside A receiving unit for receiving, a dictionary for storing a character string in association with the number of occurrences of the character string and an identification number given to each character string, and decoding a code input to the receiving unit to generate an identification number Decryption unit The information processing system having an extraction unit for extracting a character string corresponding from the dictionary based on the identification number that is generated.
【請求項6】入力された文字列と、この文字列の生起回
数および文字列ごとに与えられた識別番号とを記憶した
辞書から生起回数の最も大きい文字列について、生起回
数から符号語のビット長を求め、このビット長の整数部
分から前記文字列の識別番号の符号語を生成する段階
と、 前記求めたビット長から符号化誤差を求め、この符号化
誤差と残りの文字列の生起回数から残りの文字列の新た
な生起回数を決定する段階と、 残りの文字列の生起回数の最も大きい文字列について生
起回数から符号語のビット長を求め、このビット長の整
数部分から前記文字列の識別番号の符号語を生成する段
階とを有する情報処理方法。
6. A character string having the largest number of occurrences from a dictionary storing an input character string, the number of occurrences of the character string, and an identification number given to each character string. Calculating a code word of the identification number of the character string from the integer portion of the bit length; and obtaining a coding error from the obtained bit length, and calculating the coding error and the number of occurrences of the remaining character string. Determining the number of occurrences of the remaining character string from the above, and determining the bit length of the code word from the number of occurrences for the character string having the largest number of occurrences of the remaining character string; Generating a code word of the identification number of the information processing apparatus.
JP18591398A 1998-07-01 1998-07-01 Information processing apparatus and information processing system Expired - Fee Related JP3511901B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18591398A JP3511901B2 (en) 1998-07-01 1998-07-01 Information processing apparatus and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18591398A JP3511901B2 (en) 1998-07-01 1998-07-01 Information processing apparatus and information processing system

Publications (2)

Publication Number Publication Date
JP2000022552A true JP2000022552A (en) 2000-01-21
JP3511901B2 JP3511901B2 (en) 2004-03-29

Family

ID=16179080

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18591398A Expired - Fee Related JP3511901B2 (en) 1998-07-01 1998-07-01 Information processing apparatus and information processing system

Country Status (1)

Country Link
JP (1) JP3511901B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006345374A (en) * 2005-06-10 2006-12-21 Oki Electric Ind Co Ltd Data encoding device, data decoding device, data encoding method, and data decoding method
US9509333B2 (en) 2013-03-22 2016-11-29 Fujitsu Limited Compression device, compression method, decompression device, decompression method, information processing system, and recording medium

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006345374A (en) * 2005-06-10 2006-12-21 Oki Electric Ind Co Ltd Data encoding device, data decoding device, data encoding method, and data decoding method
JP4497029B2 (en) * 2005-06-10 2010-07-07 沖電気工業株式会社 Data encoding apparatus and data encoding method
US9509333B2 (en) 2013-03-22 2016-11-29 Fujitsu Limited Compression device, compression method, decompression device, decompression method, information processing system, and recording medium

Also Published As

Publication number Publication date
JP3511901B2 (en) 2004-03-29

Similar Documents

Publication Publication Date Title
KR100271861B1 (en) Data compression, expansion method and apparatus and data processing unit and network
Nelson et al. The data compression book 2nd edition
EP0083393B1 (en) Method of compressing information and an apparatus for compressing english text
US7365658B2 (en) Method and apparatus for lossless run-length data encoding
US5635932A (en) Lempel-ziv compression with expulsion of dictionary buffer matches
US20160321282A1 (en) Extracting method, information processing method, computer product, extracting apparatus, and information processing apparatus
JPH0682370B2 (en) Character processor
US8159374B2 (en) Unicode-compatible dictionary compression
KR20000068018A (en) Data compression and decompression system with immediate dictionary updating interleaved with string search
US8106799B1 (en) Data compression and decompression using parallel processing
CN114244373A (en) LZ series compression algorithm coding and decoding speed optimization method
JP2002353818A (en) Data compression method and device, and computer program and storage medium
US8542137B2 (en) Decoding encoded data
JPH07226846A (en) Processing method of input data stream and generation method of compressed format
US20140289208A1 (en) Data compression apparatus, data compression method, data decompression apparatus, and data decompression method
US20100194607A1 (en) Data compression method and apparatus
US9438271B2 (en) Data compression apparatus and method
US6834283B1 (en) Data compression/decompression apparatus using additional code and method thereof
JPH1013693A (en) Digital information encoding device, digital information decoding device, digital information encoding/decoding device, digital information encoding method and digital information decoding method
JP3511901B2 (en) Information processing apparatus and information processing system
US10506388B1 (en) Efficient short message compression
US6262675B1 (en) Method of compressing data with an alphabet
JPH0554077A (en) Word dictionary retriever
JP2001044850A (en) Data compression method, data decoding method and information processing unit
JP4093193B2 (en) Data compression method and program, and data restoration method and apparatus

Legal Events

Date Code Title Description
A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20031229

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080116

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090116

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090116

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100116

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110116

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110116

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120116

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130116

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees