JPH086759A - Data compression processor and data expansion processor, and data compressing method and data expanding method for data file - Google Patents

Data compression processor and data expansion processor, and data compressing method and data expanding method for data file

Info

Publication number
JPH086759A
JPH086759A JP6140310A JP14031094A JPH086759A JP H086759 A JPH086759 A JP H086759A JP 6140310 A JP6140310 A JP 6140310A JP 14031094 A JP14031094 A JP 14031094A JP H086759 A JPH086759 A JP H086759A
Authority
JP
Japan
Prior art keywords
record
data
character
compression
pointer
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
JP6140310A
Other languages
Japanese (ja)
Other versions
JP2943900B2 (en
Inventor
Hiroyuki Sawada
浩之 澤田
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.)
PFU Ltd
Original Assignee
PFU 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 PFU Ltd filed Critical PFU Ltd
Priority to JP6140310A priority Critical patent/JP2943900B2/en
Publication of JPH086759A publication Critical patent/JPH086759A/en
Application granted granted Critical
Publication of JP2943900B2 publication Critical patent/JP2943900B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PURPOSE:To compress the data of the data file efficiently with high compressibility by an easy method by providing a compressing means which has a record exclusive OR operation part and a record string-length compression part. CONSTITUTION:When an application program issues a compression command, a compressing process is started. An input data read-in part 2 reads data out of the input file specified with the compression command into an input buffer 7. The record EOR part 3 EORs a record taken out of the input buffer 7 with the last record held in a work buffer. When the taken-out record is the head record, this EOR process 18 bypassed. The record string-length compression part 4 performs the string-length compression of the record itself when the taken-out record is the head record or the EOR result when the record is the 2nd or succeeding record. As a result of the string-length compression, the compressed record is written in an output buffer 9. A compressed data write part 5 writes the compressed data of the output buffer 9 to a compression file 6.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、データ・ファイルのデ
ータ圧縮処理装置,伸長処理装置,圧縮処理方法および
伸長処理方法に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data compression processing device, a decompression processing device, a compression processing method and a decompression processing method for a data file.

【0002】[0002]

【従来の技術】従来、高い圧縮効率を得るには、辞書な
どを使用してデータ制御を行う複雑な圧縮処理方法が一
般的に知られており、連続する同一文字を圧縮する連長
圧縮処理は圧縮効率が悪いという欠点を有している。図
13は従来の連長圧縮の処理フローを示す図である。先
ず、レコードを入力域に読み込み(ステップS1)、次
に入力域のレコードを連長圧縮して(ステップS2)出
力域に出力し(ステップS3)、全てのレコードを連長
圧縮したか否かを調べ(ステップS4)、否の場合には
同様な処理を行い、全てのレコードを連長圧縮したなら
ば、エンドとする。入力域や出力域はメモリ上に存在す
る。
2. Description of the Related Art Conventionally, in order to obtain high compression efficiency, a complicated compression processing method in which data control is performed by using a dictionary is generally known, and a continuous length compression processing for compressing consecutive same characters. Has the disadvantage of poor compression efficiency. FIG. 13 is a diagram showing a processing flow of a conventional continuous length compression. First, the record is read into the input area (step S1), then the record in the input area is subjected to continuous length compression (step S2) and output to the output area (step S3), and whether or not all records have been subjected to continuous length compression. Is checked (step S4), if no, the same processing is performed, and if all records are compressed in continuous length, the process ends. The input area and output area exist on the memory.

【0003】例えば、「C1C1C1C1C1C2C2C2C2C2C3C3C3C3
C3」と言う16進数表示の15バイトのレコードを連長
圧縮すると仮定する。なお、EBCDICコード系にお
いては、C1はAと言う英文字を示し、C2はBと言う英文
字を示し、C3はCと言う英文字を示す。「C1C1C1C1C1C2
C2C2C2C2C3C3C3C3C3」と言う15バイトのレコードを連
長圧縮すると、「C1α04C2α04C3α04」と言う9バイト
の圧縮データが得られる。「C1α04」はC1と言う文字が
5個連なっていることを表し、「C2α04」はC2と言う文
字が5個連なっていることを表し、「C3α04」はC3と言
う文字が5個連なっていることを表している。「α」は
1バイトの制御文字である。
For example, "C1C1C1C1C1C2C2C2C2C2C3C3C3C3
It is assumed that a 15-byte record in hexadecimal notation "C3" is subjected to continuous length compression. In the EBCDIC code system, C1 represents the letter A, C2 represents the letter B, and C3 represents the letter C. `` C1C1C1C1C1C2
If a 15-byte record "C2C2C2C2C3C3C3C3C3" is compressed in continuous length, 9-byte compressed data "C1α04C2α04C3α04" is obtained. "C1α04" means that five characters C1 are connected, "C2α04" means that five characters C2 are connected, and "C3α04" has five characters C3. It means that. “Α” is a 1-byte control character.

【0004】図14は従来の連長伸長の処理フローを示
す図である。先ず、レコードを入力域に読み込み(ステ
ップS1)、次に入力域のレコードを連長伸長して(ス
テップS2)出力域に出力し(ステップS3)、全ての
レコードを連長伸長したか否かを調べ(ステップS
4)、否の場合には同様な処理を行い、全てのレコード
を連長伸長したならば、エンドとする。例えば、「C1α
04C2α04C3α04」と言う9バイトの圧縮データを連長伸
長すると、「C1C1C1C1C1C2C2C2C2C2C3C3C3C3C3」と言う
15バイトのレコードが得られる。
FIG. 14 is a diagram showing a processing flow of a conventional continuous length expansion. First, the record is read into the input area (step S1), then the record in the input area is expanded continuously (step S2) and output to the output area (step S3), and whether all records are expanded continuously. (Step S
4), in the case of no, the same processing is performed, and if all the records are continuously expanded, the end is determined. For example, "C1α
When the 9-byte compressed data "04C2α04C3α04" is continuously expanded, a 15-byte record "C1C1C1C1C1C2C2C2C2C2C3C3C3C3C3C3" is obtained.

【0005】図15は従来のブロック域への圧縮データ
の格納を説明する図である。図15(a) は第1の従来例
を示す。この方式をパターン1方式と呼ぶ。パターン1
方式においては、圧縮データの出力用バッファ内に主リ
ミット・ポインタMと副リミット・ポインタSを設定
し、圧縮データの出力後のバッファ内実ポインタPが副
リミット・ポインタS以上になった場合には、出力バッ
ファへの圧縮データの出力処理を取り止める出力制御を
行う。このため、圧縮元レコード長が大きい場合はブロ
ック内に大きな空領域が生じ、圧縮効率を低下させてい
た。
FIG. 15 is a diagram for explaining the conventional storage of compressed data in a block area. FIG. 15 (a) shows a first conventional example. This method is called a pattern 1 method. Pattern 1
In the method, the main limit pointer M and the sub limit pointer S are set in the buffer for outputting compressed data, and when the actual pointer P in the buffer after outputting the compressed data becomes equal to or more than the sub limit pointer S, , Output control for stopping the output processing of the compressed data to the output buffer. For this reason, when the compression source record length is large, a large empty area is generated in the block, which reduces the compression efficiency.

【0006】上述の主リミット・ポインタMは、出力バ
ッファにおけるブロックの区切りとなるポインタであ
る。また、副リミット・ポインタSは、主リミット・ポ
インタMから最悪サイズを引いた位置のポインタであ
る。最悪サイズは、データによっては圧縮すると逆に長
大してしまう場合があるため、圧縮元のデータ・サイズ
から定められる最悪の値である。
The above-mentioned main limit pointer M is a pointer that serves as a block delimiter in the output buffer. The sub limit pointer S is a pointer at a position obtained by subtracting the worst size from the main limit pointer M. The worst size is a worst value determined from the data size of the compression source, because some data may become long when compressed.

【0007】図15(b) は第2の従来例を示す。この方
式をパターン2方式と呼ぶ。パターン2方式は、パター
ン1方式の欠点を解消するために考え出されたものであ
る。パターン2方式においては、圧縮データをいったん
作業域に出力し、圧縮後のデータ・サイズとバッファ内
空領域サイズ(Mの値−Pの値)とを比較して、出力バ
ッファに出力可能なことを条件として作業域の圧縮デー
タを出力バッファに転送する。パターン2方式では、パ
ターン1方式に比べて圧縮効率を高めることが出来る
が、レコード毎に作業域へ圧縮データを転送する必要が
あるため、処理時間が大幅に低下すると言う別の問題が
生ずる。
FIG. 15 (b) shows a second conventional example. This method is called a pattern 2 method. The pattern 2 method was devised in order to eliminate the drawbacks of the pattern 1 method. In the pattern 2 method, it is possible to output the compressed data to the work area once, compare the compressed data size with the size of the empty area in the buffer (value of M-value of P), and output to the output buffer. The compressed data in the work area is transferred to the output buffer under the condition. The pattern 2 method can improve the compression efficiency as compared with the pattern 1 method, but since compressed data must be transferred to the work area for each record, another problem that the processing time is significantly reduced occurs.

【0008】図16は従来の媒体異常発生時の圧縮デー
タの復元を説明する図である。圧縮データは例えば磁気
ディスクに記憶されている。圧縮データの復元を行うと
きは、磁気ディスクに記憶されている圧縮データをブロ
ック単位で入力バッファに読み込んで、圧縮データの復
元を行うが、磁気ディスクからの圧縮データの読込み時
に媒体異常が発生した時には、従来の技術においては、
それ以後の処理を打ち切っていた。図示の例では、ブロ
ック当たりの収納レコード数が4であり、ブロック2の
読込み時に媒体異常が発生したとしている。このような
状態の下では、従来の技術では、ブロック2,ブロック
3,ブロック4を構成している圧縮データの復元が行わ
れない。すなわち、12レコードが消失する。
FIG. 16 is a diagram for explaining the conventional restoration of compressed data when a medium abnormality occurs. The compressed data is stored in, for example, a magnetic disk. When restoring the compressed data, the compressed data stored in the magnetic disk is read into the input buffer in block units and the compressed data is restored, but a media error occurred when reading the compressed data from the magnetic disk. Sometimes, in conventional technology,
The process after that was terminated. In the illustrated example, the number of stored records per block is 4, and it is assumed that a medium abnormality has occurred when reading block 2. Under such a state, the conventional technique does not restore the compressed data forming the blocks 2, 3, and 4. That is, 12 records are lost.

【0009】[0009]

【発明が解決しようとする課題】図13に示したような
従来の連長圧縮方式は、圧縮効率が悪いと言う欠点を有
している。また、図15(a) に示したような従来のブロ
ック域への圧縮データの格納方式は、データの収納効率
が悪いと言う欠点を有しており、図15(b) の方式は処
理効率が悪いという欠点を有している。さらに、図16
に示したような従来の媒体異常発生時の圧縮データの復
元方式は、大量のレコードが消失すると言う欠点を有し
ている。
The conventional continuous length compression system as shown in FIG. 13 has a drawback that the compression efficiency is poor. Further, the conventional method of storing compressed data in the block area as shown in FIG. 15 (a) has a drawback that the data storage efficiency is poor, and the method of FIG. 15 (b) has processing efficiency. Has the drawback of being bad. Furthermore, FIG.
The conventional method of decompressing compressed data upon occurrence of a medium abnormality as shown in (1) has a drawback that a large number of records are lost.

【0010】本発明は、この点に鑑みて創作されたもの
であって、辞書などの他資源を使用しない簡単な方法で
高い圧縮率で且つ効率良くデータ・ファイルのデータを
圧縮する圧縮処理装置および方法を提供することを目的
としている。また、本発明は、圧縮データを効率よく伸
長できる伸長処理装置および方法を提供することを目的
としている。更に、本発明は、圧縮データを効率良く出
力バッファに格納できる圧縮処理装置および方法を提供
することを目的としている。更に、本発明は、データの
入力処理中に媒体異常が発生した時に、異常発生箇所ま
での圧縮データを伸長できる伸長処理装置および方法を
提供することを目的としている。
The present invention was created in view of this point, and it is a compression processing apparatus for efficiently compressing data in a data file with a high compression rate by a simple method that does not use other resources such as a dictionary. And to provide a method. It is another object of the present invention to provide a decompression processing device and method capable of efficiently decompressing compressed data. Another object of the present invention is to provide a compression processing device and method capable of efficiently storing compressed data in an output buffer. Another object of the present invention is to provide a decompression processing device and method capable of decompressing compressed data up to a location where an abnormality occurs when a medium abnormality occurs during data input processing.

【0011】[0011]

【課題を解決するための手段】図1(a) は請求項1の発
明の原理説明図である。請求項1のデータ圧縮処理装置
は、1個または複数個のレコードを格納する入力バッフ
ァと、レコード排他的論理和演算部およびレコード連長
圧縮部を有する圧縮処理手段と、1個または複数個の圧
縮データを格納する出力バッファとを具備し、圧縮処理
手段は、入力バッファからレコードを取り出し、取り出
したレコードが最初のものである場合には、取り出した
レコードを作業域に格納すると共に、レコード連長圧縮
部によって連長圧縮し、連長圧縮の結果を出力バッファ
に格納し、取り出したレコードが最初のレコードに後続
するレコードである場合には、取り出したレコードと作
業域に格納されている一つ前のレコードをレコード排他
的論理和演算部によって排他的論理和演算し、排他的論
理和演算の結果をレコード連長圧縮部によって連長圧縮
し、取り出したレコードを作業域に書き込むと共に連長
圧縮の結果を出力バッファに格納することを特徴とする
ものである。
FIG. 1A is an explanatory view of the principle of the invention of claim 1. A data compression processing apparatus according to claim 1, wherein an input buffer for storing one or a plurality of records, a compression processing means having a record exclusive OR operation section and a record run length compression section, and one or a plurality of records. The compression processing means fetches a record from the input buffer, stores the fetched record in the work area, and stores the fetched record when the fetched record is the first one. The continuous compression is performed by the long compression unit, the result of the continuous compression is stored in the output buffer, and if the retrieved record is a record following the first record, the one stored in the retrieved record and the work area is stored. The previous exclusive-OR operation is performed on the previous record by the exclusive-OR operation unit, and the result of the exclusive-OR operation is performed by the record run length compression unit. And run-length encoding Te, is characterized in that stored in the output buffer results in run-length encoding writes the retrieved records in the work area.

【0012】図1(b) は請求項2の発明の原理説明図で
ある。請求項2のデータ伸長処理装置は、1個または複
数個の圧縮データを格納する入力バッファと、レコード
連長伸長部およびレコード排他的論理和演算部を有する
伸長処理手段と、1個または複数個のレコードを格納す
る出力バッファとを具備し、伸長処理手段は、入力バッ
ファから圧縮データを取り出し、取り出した圧縮データ
が最初のものである場合には、当該圧縮データをレコー
ド連長伸長部によって連長伸長し、連長伸長の結果を作
業域および出力バッファに書き込み、取り出した圧縮デ
ータが最初の圧縮データに後続するものである場合に
は、当該圧縮データをレコード連長伸長部によって連長
伸長し、連長伸長の結果得られたレコードと作業域のレ
コードをレコード排他的論理和演算部によって排他的論
理和演算し、排他的論理和演算の結果を作業域および出
力バッファに書き込むことを特徴とするものである。
FIG. 1B is an explanatory view of the principle of the invention of claim 2. 3. The data decompression processing device according to claim 2, wherein an input buffer for storing one or a plurality of compressed data, a decompression processing means having a record continuous length decompression unit and a record exclusive OR operation unit, and one or a plurality of units. And an output buffer for storing the record of the record. Length-decompress, write the result of run-length decompression to the work area and output buffer, and if the extracted compressed data is subsequent to the first compressed data, then the record run-length decompressor extends that compressed data. Then, the record obtained as a result of the continuous length expansion and the record in the work area are subjected to exclusive OR operation by the record exclusive OR operation part, and the exclusive OR operation is performed. The results of calculation is characterized in that the writing in the work area and the output buffer.

【0013】請求項3のデータ圧縮処理装置は、請求項
1のデータ圧縮処理装置において、レコード連長圧縮部
が、所定の文字の複数個の連続した並びとして構成され
る文字列を、特定制御文字と当該特定制御文字に続く上
記所定の文字の個数を示す文字とで表し、これ以外の文
字の複数個の連続した並びとして構成される文字列を、
当該文字と,それに後続する他の特定制御文字と,それ
に後続する当該文字の個数を示す文字とで表すことを特
徴とするものである。
According to a third aspect of the present invention, there is provided the data compression processing apparatus according to the first aspect, wherein the record consecutive length compression section performs specific control of a character string formed of a plurality of predetermined characters. Character string and a character indicating the number of the predetermined character following the specific control character, and a character string configured as a continuous sequence of a plurality of other characters,
It is characterized by being represented by the character, another specific control character following the character, and a character indicating the number of the character following the character.

【0014】請求項4のデータ伸長処理装置は、請求項
2のデータ伸長処理装置において、レコード連長伸長部
が、圧縮データの中に特定制御文字が現れた場合には、
当該特定制御文字に後続する文字で示される個数+1だ
け、所定の文字を出力し、圧縮データの中に他の特定制
御文字が現れた場合には、当該他の特定制御文字に後続
する文字で示される個数だけ、当該他の特定制御文字の
直前に存在する文字を出力することを特徴とするもので
ある。
A data decompression processing device according to a fourth aspect is the data decompression processing device according to the second aspect, wherein when the record consecutive length decompression unit has a specific control character appearing in the compressed data,
When a predetermined character is output by the number +1 indicated by the character following the specific control character and another specific control character appears in the compressed data, the character following the other specific control character is output. It is characterized by outputting the character existing immediately before the other specified control character by the indicated number.

【0015】図2(a) は請求項5の発明の原理説明図で
ある。請求項5のデータ圧縮処理装置は、レコードを圧
縮して得られた圧縮データが書き込まれる出力バッファ
と、作業バッファと、出力バッファにおけるブロックの
区切りを示す主リミット・ポインタと、主リミット・ポ
インタから圧縮元レコードのデータ・サイズによって定
まるサイズを差し引いた位置を示す副リミット・ポイン
タと、出力バッファにおけるデータ書込位置を示す実ポ
インタと、レコードを圧縮して出力バッファに書き込む
圧縮処理手段とを具備し、圧縮処理手段は、実ポインタ
が副リミット・ポインタより小である場合には、レコー
ドの圧縮結果を出力バッファに書き込み、次いで実ポイ
ンタを更新し、実ポインタが副リミット・ポインタ以上
の場合には、レコードの圧縮結果を作業バッファに書き
込み、次に実ポインタに圧縮結果のデータ・サイズを加
算したものが主リミット・ポインタ以下であることを条
件として作業バッファの圧縮結果を出力バッファに格納
し、次に実ポインタの更新を行うことを特徴とするもの
である。
FIG. 2A is a diagram for explaining the principle of the invention of claim 5. The data compression processing device according to claim 5 comprises an output buffer to which compressed data obtained by compressing records is written, a work buffer, a main limit pointer indicating a block delimiter in the output buffer, and a main limit pointer. A sub-limit pointer indicating a position obtained by subtracting a size determined by the data size of the compression source record, an actual pointer indicating a data writing position in the output buffer, and compression processing means for compressing the record and writing the record in the output buffer. If the real pointer is smaller than the sub-limit pointer, the compression processing means writes the compression result of the record in the output buffer, then updates the real pointer, and when the real pointer is equal to or larger than the sub-limit pointer. Writes the compression result of the record to the working buffer, then to the real pointer The feature is that the compression result of the work buffer is stored in the output buffer, and then the actual pointer is updated, provided that the sum of the data sizes of the compression results is less than or equal to the main limit pointer. .

【0016】図2(b) は請求項6の発明の原理説明図で
ある。請求項6のデータ伸長処理装置は、レコードを圧
縮して得られた圧縮データを格納する入力バッファと、
媒体異常発生箇所を示す値を記憶する異常箇所ポインタ
と、入力バッファのブロック内における文字読込位置を
示す実ポインタと、データ・ファイルからブロック単位
で圧縮データを読み込んで入力バッファに格納すると共
にブロック読込みの過程において媒体異常が発生した時
には媒体異常の位置を示すブロック内相対位置を異常箇
所ポインタにセットするデータ読込処理手段と、圧縮デ
ータを伸長する処理を行う伸長処理手段とを具備し、伸
長処理手段は、ブロック読込みの過程において媒体異常
が発生していない場合は、当該ブロックに含まれている
圧縮データを全て伸長し、媒体異常が発生している場合
には、実ポインタが異常箇所ポインタに達するまで、当
該ブロックに含まれている圧縮データの伸長処理を行う
ことを特徴とするものである。
FIG. 2B is an explanatory view of the principle of the invention of claim 6. A data decompression processing device according to claim 6, wherein an input buffer for storing compressed data obtained by compressing a record;
Abnormal point pointer that stores the value that shows the medium abnormal point, real pointer that shows the character reading position in the block of the input buffer, compressed data is read in block units from the data file, stored in the input buffer, and block read When a medium abnormality occurs in the process of, the data read processing means for setting the relative position in the block indicating the position of the medium abnormality to the abnormal point pointer, and the decompression processing means for decompressing the compressed data are provided. The means decompresses all the compressed data contained in the block if the medium abnormality has not occurred in the process of reading the block, and if the medium abnormality has occurred, the actual pointer becomes the abnormal point pointer. Characterized by decompressing the compressed data contained in the block until reaching Than it is.

【0017】請求項7のデータ圧縮処理方法は、1個ま
たは複数個のレコードを格納する入力バッファから、レ
コードを取り出し、取り出したレコードが最初のもので
ある場合には、取り出したレコードを作業域に格納する
と共に連長圧縮し、連長圧縮の結果を出力バッファに格
納し、取り出したレコードが最初のレコードに後続する
レコードである場合には、取り出したレコードと作業域
に格納されている一つ前のレコードとを排他的論理和演
算し、排他的論理和演算の結果を連長圧縮し、取り出し
たレコードを作業域に書き込むと共に連長圧縮の結果を
出力バッファに格納することを特徴とするものである。
According to a seventh aspect of the data compression processing method, a record is fetched from an input buffer storing one or a plurality of records, and if the fetched record is the first one, the fetched record is placed in a work area. In the output buffer and the result of the continuous compression is stored in the output buffer. If the retrieved record is a record following the first record, the retrieved record and the one stored in the work area are stored. An exclusive-OR operation is performed on the preceding record, the result of the exclusive-OR operation is run-length compressed, the fetched record is written to the work area, and the run-length compressed result is stored in the output buffer. To do.

【0018】請求項8のデータ伸長処理方法は、1個ま
たは複数個の圧縮データを格納する入力バッファから圧
縮データを取り出し、取り出した圧縮データが最初のも
のである場合には、当該圧縮データを連長伸長し、連長
伸長の結果を作業域および出力バッファに書き込み、取
り出した圧縮データが最初の圧縮データに後続するもの
である場合には、当該圧縮データを連長伸長し、連長伸
長の結果得られたレコードと作業域のレコードとを排他
的論理和演算し、排他的論理和演算の結果を作業域およ
び出力バッファに書き込むことを特徴とするものであ
る。
According to the data decompression processing method of claim 8, the compressed data is taken out from the input buffer storing one or a plurality of compressed data, and if the taken out compressed data is the first one, the compressed data is extracted. Perform continuous length expansion, write the result of continuous length expansion to the work area and output buffer, and if the extracted compressed data follows the first compressed data, expand the compressed data by continuous length and expand the continuous length. The record obtained as a result of the above and the record in the work area are subjected to an exclusive OR operation, and the result of the exclusive OR operation is written to the work area and the output buffer.

【0019】請求項9のデータ圧縮処理方法は、請求項
7のデータ圧縮処理方法において、所定の文字の複数個
の連続した並びとして構成される文字列を、特定制御文
字と当該特定制御文字に続く上記所定の文字の個数を示
す文字とで表し、これ以外の文字の複数個の連続した並
びとして構成される文字列を、当該文字と,それに後続
する他の特定制御文字と,それに後続する当該文字の個
数を示す文字とで表すことを特徴とするものである。
According to a ninth aspect of the data compression processing method of the seventh aspect, in the data compression processing method of the seventh aspect, a character string formed of a plurality of consecutive predetermined characters is used as a specific control character and the specific control character. A character string that is represented by the following character that indicates the number of the predetermined characters and that is composed of a plurality of consecutive characters other than the above character, and that character, another specific control character that follows the character string, and the following character It is characterized by being expressed by a character indicating the number of the character.

【0020】請求項10のデータ伸長処理方法は、請求
項8に記載のデータ伸長処理方法において、圧縮データ
の中に特定制御文字が現れた場合には、当該特定制御文
字に後続する文字で示される個数+1だけ、所定の文字
を出力し、圧縮データの中に他の特定制御文字が現れた
場合には、当該他の特定制御文字に後続する文字で示さ
れる個数だけ、当該他の特定制御文字の直前に存在する
文字を出力することを特徴とするものである。
The data decompression processing method according to a tenth aspect is the data decompression processing method according to the eighth aspect, wherein when a specific control character appears in the compressed data, it is indicated by a character following the specific control character. The number of specified characters is output by the number +1 that is displayed, and when another specific control character appears in the compressed data, the number of characters specified by the character following the other specific control character It is characterized in that the character existing immediately before the character is output.

【0021】請求項11のデータ圧縮処理方法は、出力
バッファにおけるブロックの区切りを示す主リミット・
ポインタ,主リミット・ポインタから圧縮元レコードの
データ・サイズによって定まるサイズを差し引いた位置
を示す副リミット・ポインタおよび出力バッファにおけ
るデータ書込位置を示す実ポインタを設定し、入力バッ
ファからレコードを読み込み、実ポインタが副リミット
・ポインタより小である場合には、読み込んだレコード
の圧縮結果を出力バッファに書き込み、次いで実ポイン
タを更新し、実ポインタが副リミット・ポインタ以上の
場合には、読み込んだレコードの圧縮結果を作業バッフ
ァに書き込み、次に実ポインタに圧縮結果のデータ・サ
イズを加算したものが主リミット・ポインタ以下である
ことを条件として作業バッファの圧縮結果を出力バッフ
ァに格納し、次に実ポインタの更新を行うことを特徴と
するものである。
According to the data compression processing method of claim 11, a main limit indicating a block delimiter in the output buffer.
Set a sub-limit pointer that indicates the position where the size determined by the data size of the compression source record is subtracted from the pointer and main limit pointer, and a real pointer that indicates the data write position in the output buffer, and read the record from the input buffer. If the actual pointer is less than the sub-limit pointer, write the compressed result of the read record to the output buffer, then update the actual pointer. If the actual pointer is greater than or equal to the sub-limit pointer, read record Write the result of compression to the work buffer, then store the result of compression in the work buffer in the output buffer, provided that the sum of the data size of the result of compression and the actual pointer is less than or equal to the main limit pointer, and then The feature is that the real pointer is updated.

【0022】請求項12のデータ伸長処理方法は、外部
記憶装置上のデータ・ファイルから1ブロックの圧縮デ
ータを入力バッファに読み込み、読込みの過程で媒体異
常が発生した場合には、入力バッファに何処まで圧縮デ
ータが正常に読み込まれたかを示す値を異常箇所ポイン
タに書き込むと共に、媒体異常が発生したことを記憶
し、ブロック読込みの過程において媒体異常が発生して
いない場合は、当該ブロックに含まれている圧縮データ
を全て伸長し、媒体異常が発生している場合には、実ポ
インタが異常箇所ポインタに達するまで、当該ブロック
に含まれている圧縮データの伸長処理を行うことを特徴
とするものである。
According to a twelfth aspect of the present invention, in the data decompression processing method, one block of compressed data is read from the data file on the external storage device into the input buffer, and if a medium error occurs during the reading process, where is stored in the input buffer. The value indicating whether the compressed data has been read normally is written to the abnormal point pointer, and the fact that a medium error has occurred is stored.If there is no medium error during the block reading process, it is included in the block. If all the compressed data is decompressed and a media error occurs, the compressed data contained in the block is expanded until the actual pointer reaches the abnormal location pointer. Is.

【0023】[0023]

【作用】請求項1のデータ圧縮処理装置の作用について
説明する。請求項1のデータ圧縮処理装置においては、
1番目のレコードについては連長圧縮してその結果を出
力バッファに格納し、2番のレコードについては2番目
のレコードと1番目のレコードとのEORを取り、EO
Rの結果を連長圧縮して、その結果を出力バッファに格
納する。3番目のレコードについては、3番目のレコー
ドと2番目のレコードとのEORをとり、EORの結果
を連長圧縮し、出力バッファに格納する。以下、同様な
処理を繰り返す。請求項7のデータ圧縮処理方法の作用
は、ほぼ同じである。
The operation of the data compression processor according to claim 1 will be described. In the data compression processing device according to claim 1,
For the first record, run length compression is performed and the result is stored in the output buffer. For the second record, the EOR of the second record and the first record is taken, and EO
The result of R is length-compressed and the result is stored in the output buffer. For the third record, the EOR of the third record and the second record is taken, the result of the EOR is subjected to continuous length compression, and the result is stored in the output buffer. Hereinafter, similar processing is repeated. The operation of the data compression processing method according to claim 7 is almost the same.

【0024】請求項2のデータ伸長処理装置の作用につ
いて説明する。請求項2のデータ伸長処理装置は、請求
項1のデータ圧縮処理装置で圧縮された圧縮データを伸
長するものである。1番目の圧縮データについては連長
伸長し、次に連長伸長結果データを作業域に格納し、次
に出力バッファに格納する。2番目の圧縮データについ
ては、連長伸長し、この連長伸長結果と作業域のデータ
とのEORを取り、EOR結果を作業域に格納し、次に
出力バッファに格納する。3番目以降の圧縮データにつ
いては、2番目の圧縮データに対する処理と同様な処理
を行う。請求項8のデータ伸長処理方法の作用は、略ぼ
同じである。
The operation of the data decompression processing device according to claim 2 will be described. The data decompression processing device of claim 2 decompresses the compressed data compressed by the data compression processing device of claim 1. The first compressed data is subjected to continuous length expansion, the continuous length expansion result data is stored in the work area, and then stored in the output buffer. For the second compressed data, the continuous length expansion is performed, the EOR of this continuous length expansion result and the data in the work area is taken, the EOR result is stored in the work area, and then stored in the output buffer. For the third and subsequent compressed data, the same processing as the processing for the second compressed data is performed. The operation of the data decompression processing method according to claim 8 is almost the same.

【0025】請求項3のデータ圧縮処理装置の作用につ
いて説明する。請求項3のデータ圧縮処理装置において
は、所定の文字の複数個の連続した並びとして構成され
る文字列を、特定制御文字(例えば「β」)と所定の文
字の個数を示す文字の並びに圧縮するものである。例え
ば、5個の所定の文字から構成される文字列は、「β0
4」と圧縮される。所定の文字とは、例えば16進数表
現で「00」である。i番目のレコードとi+1番目のレ
コードのEORを取ると、その結果には「00」の出現頻
度が高い。請求項9のデータ圧縮処理方法の作用は、ほ
ぼ同じである。
The operation of the data compression processor of claim 3 will be described. The data compression processing apparatus according to claim 3, wherein a character string configured as a plurality of continuous sequences of a predetermined character is arranged in a row and compressed with a specific control character (for example, "β") and a character indicating a predetermined number of characters. To do. For example, a character string consisting of five predetermined characters is "β0
Compressed as 4 ". The predetermined character is, for example, "00" in hexadecimal notation. When the EOR of the i-th record and the i + 1-th record is taken, the appearance frequency of "00" is high. The operation of the data compression processing method according to claim 9 is almost the same.

【0026】請求項4のデータ伸長処理装置の作用につ
いて説明する。請求項4のデータ伸長処理装置は、例え
ば「β04」と言う文字列があった場合には、これを5個
の所定の文字から構成される文字列に伸長するものであ
る。請求項10のデータ伸長処理方法の作用は、ほぼ同
じである。
The operation of the data decompression processing device according to claim 4 will be described. In the data decompression processing device according to the fourth aspect, for example, when a character string “β04” is present, it is decompressed into a character string composed of five predetermined characters. The operation of the data decompression processing method according to claim 10 is almost the same.

【0027】請求項5のデータ圧縮処理装置の作用につ
いて説明する。請求項5のデータ圧縮処理装置は、実ポ
インタが副リミット・ポインタより小である場合には、
圧縮データを直接的に出力バッファに書き込み、実ポイ
ンタが副リミット・ポインタ以上の場合には、圧縮デー
タをいったん作業バッファに書き込み、この圧縮データ
のサイズと現在の実ポインタを加算したものが主リミッ
ト・ポインタを越えていないことを条件として、作業バ
ッファの圧縮データを出力バッファに書き込むものであ
る。請求項11のデータ圧縮処理方法の作用は、ほぼ同
じである。
The operation of the data compression processing device of claim 5 will be described. The data compression processing device according to claim 5, wherein the actual pointer is smaller than the sub-limit pointer,
If the compressed data is written directly to the output buffer and the actual pointer is greater than or equal to the secondary limit pointer, the compressed data is written to the working buffer once, and the size of this compressed data plus the current actual pointer is the main limit. -The compressed data in the work buffer is written to the output buffer on condition that the pointer is not exceeded. The operation of the data compression processing method according to claim 11 is almost the same.

【0028】請求項6のデータ伸長処理装置の作用につ
いて説明する。請求項6のデータ伸長処理装置は、ブロ
ックの読込み過程において媒体異常が発生した場合に
は、異常箇所ポインタEに媒体異常の位置を示すブロッ
ク内相対位置をセットし、実ポインタPが異常箇所ポイ
ンタEに達するまで、当該ブロックの伸長処理を行うも
のである。請求項12のデータ伸長処理方法の作用は、
ほぼ同じである。
The operation of the data decompression processing device according to claim 6 will be described. In the data decompression processing device according to claim 6, when a medium abnormality occurs in the block reading process, the abnormal point pointer E is set to the relative position within the block indicating the position of the medium abnormality, and the actual pointer P is set to the abnormal point pointer. The decompression process of the block is performed until E is reached. The operation of the data expansion processing method according to claim 12 is as follows:
It is almost the same.

【0029】[0029]

【実施例】図3は本発明のデータ圧縮処理装置の概要を
示す機能ブロック図である。同図において、1は入力フ
ァイル、2は入力データ読込み部、3はレコードEOR
部、4はレコード連長圧縮部、5は圧縮データ書込み
部、6は圧縮ファイル、7は入力バッファ、8は作業バ
ッファ、9は出力バッファを示している。
DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG. 3 is a functional block diagram showing an outline of a data compression processing device of the present invention. In the figure, 1 is an input file, 2 is an input data reading unit, and 3 is a record EOR.
Reference numeral 4 indicates a record continuous length compression unit, 5 indicates a compressed data writing unit, 6 indicates a compressed file, 7 indicates an input buffer, 8 indicates a work buffer, and 9 indicates an output buffer.

【0030】入力ファイル1は、例えば磁気ディスク上
に存在する。圧縮ファイル6も同様である。入力データ
読込み部2やレコードEOR部3,レコード連長圧縮部
4,圧縮データ書込み部5は、計算機の中に機能として
存在する。入力バッファ7や作業バッファ8,出力バッ
ファ9は、計算機のメモリ上に存在する。
The input file 1 exists on a magnetic disk, for example. The same applies to the compressed file 6. The input data reading unit 2, the record EOR unit 3, the record continuous length compression unit 4, and the compressed data writing unit 5 exist as functions in the computer. The input buffer 7, the work buffer 8, and the output buffer 9 exist on the memory of the computer.

【0031】応用プログラムから圧縮コマンドが発行さ
れると、圧縮処理が開始される。入力データ読込み部2
は、圧縮コマンドで指定された入力ファイルからデータ
を入力バッファ7に読み込む。レコードEOR部3は、
入力バッファ7から取り出されたレコードと,作業バッ
ファに保持されている一つ前のレコードとのEORを取
る。なお、取り出されたレコードが先頭レコードの場合
は、このEOR処理は迂回される。レコード連長圧縮部
4は、先頭レコードの場合はレコードそのものを、第2
レコード以降の場合はEOR結果を連長圧縮する。連長
圧縮の結果は、出力バッファ9に書き込まれる。圧縮デ
ータ書込み部5は、出力バッファ9の圧縮データを圧縮
ファイル6に書き込む。
When a compression command is issued from the application program, the compression process is started. Input data reading unit 2
Reads data from the input file specified by the compression command into the input buffer 7. The record EOR section 3 is
EOR of the record fetched from the input buffer 7 and the previous record held in the work buffer is calculated. If the retrieved record is the first record, this EOR process is bypassed. In the case of the first record, the record run length compression unit 4 changes the record itself to the second record.
In the case of the record and thereafter, the EOR result is compressed for a continuous length. The result of the continuous length compression is written in the output buffer 9. The compressed data writing unit 5 writes the compressed data in the output buffer 9 into the compressed file 6.

【0032】図4は本発明の伸長処理装置の概要を示す
機能ブロック図である。同図において、11は圧縮ファ
イル、12は圧縮データ読込み部、13はレコード連長
伸長部、14はレコードEOR部、15は出力データ書
込み部、16は出力ファイル、17は入力バッファ、1
8は作業バッファ、19は出力バッファをそれぞれ示し
ている。
FIG. 4 is a functional block diagram showing an outline of the decompression processing device of the present invention. In the figure, 11 is a compressed file, 12 is a compressed data reading unit, 13 is a record continuous length expansion unit, 14 is a record EOR unit, 15 is an output data writing unit, 16 is an output file, 17 is an input buffer, 1
Reference numeral 8 is a work buffer, and 19 is an output buffer.

【0033】圧縮ファイル11は、例えば磁気ディスク
上に存在する。出力ファイル16も同様である。圧縮デ
ータ読込み部12やレコード連長伸長部13,レコード
EOR部4,出力データ書込み部15は、計算機の中に
機能として存在する。入力バッファ17や作業バッファ
18,出力バッファ19は、計算機のメモリ上に存在す
る。
The compressed file 11 exists on a magnetic disk, for example. The same applies to the output file 16. The compressed data reading unit 12, the record continuous length expansion unit 13, the record EOR unit 4, and the output data writing unit 15 exist as functions in the computer. The input buffer 17, the work buffer 18, and the output buffer 19 exist in the memory of the computer.

【0034】応用プログラムから伸長コマンドが発行さ
れると、伸長処理が開始される。圧縮データ読込み部1
2は、伸長コマンドで指定されたファイルから圧縮デー
タを入力バッファ17に読み込む。レコード連長伸長部
13は、入力バッファ17から取り出された圧縮データ
を連長伸長する。レコードEOR部14は、連長伸長の
結果と,作業バッファ18に保持されている1つ前のレ
コードとのEORを取る。なお、取り出された圧縮デー
タが先頭データの場合は、このEOR処理は迂回され
る。伸長結果は、作業バッファ18および出力バッファ
19に書き込まれる。出力データ書込み部15は、出力
バッファ9のレコードをファイル16に書き込む。
When a decompression command is issued from the application program, decompression processing is started. Compressed data reading unit 1
2 reads the compressed data from the file designated by the decompression command into the input buffer 17. The record run length expansion unit 13 runs length expansion of the compressed data extracted from the input buffer 17. The record EOR unit 14 takes the EOR of the result of the continuous length expansion and the previous record held in the work buffer 18. If the extracted compressed data is the head data, this EOR process is bypassed. The decompression result is written in the work buffer 18 and the output buffer 19. The output data writing unit 15 writes the record of the output buffer 9 to the file 16.

【0035】図5は本発明の圧縮処理の1例の処理フロ
ーを示す図である。ステップS1では、レコードを入力
域に読み込んだ後、作業域にコピーする。ステップS2
では、入力レコードを連長圧縮して出力する。ステップ
S3では、終了か否かを調べ、noの場合にはステップ
S4に進み、yesの場合にはエンドとする。
FIG. 5 is a diagram showing a processing flow of an example of the compression processing of the present invention. In step S1, the record is read into the input area and then copied into the work area. Step S2
Then, the input record is output after it is compressed. In step S3, it is checked whether or not the process has ended. If no, the process proceeds to step S4, and if yes, the process ends.

【0036】ステップS4では、次レコードを入力域に
読み込む。ステップS5では、入力域に格納されている
レコードと,作業域に格納されている前レコードとでE
OR演算を行う。ステップS6では、EOR演算の結果
を連長圧縮して、出力域に出力する。ステップS7で
は、入力レコードを作業域にコピーする。ステップS8
では、終了か否かを調べる。noの場合はステップS4
に戻り、yesの場合はエンドとする。
In step S4, the next record is read into the input area. In step S5, the record stored in the input area and the previous record stored in the work area E
Perform an OR operation. In step S6, the result of the EOR operation is run length compressed and output to the output area. In step S7, the input record is copied to the work area. Step S8
Then, it is checked whether or not it is finished. If no, step S4
Return to and end if yes.

【0037】1番目のレコードが「C1C1C1C1C1C2C2C2C2
C2C3C3C3C3C4」であり、2番目のレコードが「C1C1C1C1
C1C2C2C2C2C2C3C3C3C3C3」であると仮定する。なお、1
6進数表示の「C4」は、EBCDICコード系ではDと
言う英文字を示す。このような仮定の下で、図5の処理
を行うと、最初に1番目のレコード「C1C1C1C1C1C2C2C2
C2C2C3C3C3C3C4」が連長圧縮され、10バイトの圧縮デ
ータ「C1α04C2α04C3α03C4」が生成され、この圧縮デ
ータが出力域に書き込まれる。次に、2番目のレコード
「C1C1C1C1C1C2C2C2C2C2C3C3C3C3C3」が1番目のレコー
ド「C1C1C1C1C1C2C2C2C2C2C3C3C3C3C4」とEOR演算さ
れ、「000000000000000000000000000007」が生成され
る。「000000000000000000000000000007」を連長圧縮す
ると、4バイトの圧縮データ「00α0D07」が生成され、
この圧縮データが出力域に書き込まれる。
The first record is "C1C1C1C1C1C2C2C2C2
"C2C3C3C3C3C4" and the second record is "C1C1C1C1"
C1C2C2C2C2C2C3C3C3C3C3 ". 1
The hexadecimal notation "C4" represents the letter D in the EBCDIC code system. If the processing of FIG. 5 is performed under such an assumption, first, the first record “C1C1C1C1C1C2C2C2
"C2C2C3C3C3C3C4" is continuously compressed, 10-byte compressed data "C1α04C2α04C3α03C4" is generated, and this compressed data is written to the output area. Next, the second record "C1C1C1C1C1C2C2C2C2C2C3C3C3C3C3" is EORed with the first record "C1C1C1C1C1C1C2C2C2C2C3C3C3C3C4C" to generate "000000000000000000000000000007". When "000000000000000000000000000007" is consecutively compressed, 4-byte compressed data "00α0D07" is generated,
This compressed data is written to the output area.

【0038】図6は本発明の伸長処理の1例の処理フロ
ーを示す図である。図6の伸長処理は、図5の圧縮処理
で圧縮された圧縮データを伸長するものである。ステッ
プS1では、レコードを入力域に読み込む。ステップS
2では、読み込んだレコードを連長方式により伸長す
る。ステップS3では、初期状態(1回目の伸長)か否
かを調べる。noの場合はステップS4に進み、yes
の場合はステップS5に進む。
FIG. 6 is a diagram showing a processing flow of an example of the decompression processing of the present invention. The decompression processing of FIG. 6 is to decompress the compressed data compressed by the compression processing of FIG. In step S1, the record is read into the input area. Step S
In 2, the read record is expanded by the continuous length method. In step S3, it is checked whether or not it is in the initial state (first extension). If no, go to step S4, yes
In case of, it progresses to step S5.

【0039】ステップS4では、伸長したレコードと作
業域のレコードとのEOR演算を行う。ステップS5で
は、伸長結果を作業域にコピーする。ステップS6で
は、作業域のレコードを出力域に出力する。ステップS
7では、終了か否かを調べ、yesの場合はエンドと
し、noの場合はステップS1に戻る。
In step S4, an EOR operation is performed on the expanded record and the record in the work area. In step S5, the decompression result is copied to the work area. In step S6, the record of the work area is output to the output area. Step S
In step 7, it is checked whether or not the process has ended. If yes, the process ends, and if no, the process returns to step S1.

【0040】2番目のレコードが「00α0D07」であると
仮定する。このレコードを連長方式で伸長すると、「00
0000000000000000000000000007」が得られる。作業域に
格納されているレコードが「C1C1C1C1C1C2C2C2C2C2C3C3
C3C3C4」であると仮定すると、「00000000000000000000
0000000007」と「C1C1C1C1C1C2C2C2C2C2C3C3C3C3C4」と
がEOR演算され、「C1C1C1C1C1C2C2C2C2C2C3C3C3C3C
3」が得られる。
Assume that the second record is "00α0D07". When this record is expanded using the continuous length method, "00
0000000000000000000000000007 "is obtained. The record stored in the work area is "C1C1C1C1C1C2C2C2C2C2C3C3
Assuming that it is "C3C3C4", "00000000000000000000"
"0000000007" and "C1C1C1C1C1C2C2C2C2C2C3C3C3C3C4" are EORed and "C1C1C1C1C1C1C2C2C2C2C2C3C3C3C3C3C
3 ”is obtained.

【0041】図7は本発明のレコードの連長圧縮の1例
の処理フローを示す図である。図7の連長圧縮は、図5
の圧縮処理でデータ・ファイルを圧縮すると圧縮された
文字列には「00」が多いと言う特性を生かして、圧縮符
号化文字列「00α」の2文字を「β」の1文字に置き換
え、更に圧縮率を高めたものである。「β」は1バイト
の制御文字である。図7の処理フローは、図5の処理フ
ロー中のステップS2およびステップS6の処理を詳細
に説明する図である。
FIG. 7 is a diagram showing a processing flow of an example of record length compression of the present invention. The continuous length compression of FIG.
Taking advantage of the characteristic that "00" is often found in the compressed character string when the data file is compressed by the compression process of, the two characters of the compression encoded character string "00α" are replaced with one character of "β", The compression rate is further increased. “Β” is a 1-byte control character. The process flow of FIG. 7 is a diagram illustrating in detail the processes of steps S2 and S6 in the process flow of FIG.

【0042】ステップS1では、連続文字カウンタNを
0にし、1文字入力する。ステップS2では、終了か否
かを調べ、yesの場合はステップS13に進み、no
の場合はステップS3に進む。ステップS3では、1文
字入力する。ステップS4では、終了か否かを調べる。
yesの場合はステップS13に進み、noの場合はス
テップS5に進む。ステップS5では、入力した文字が
前の文字と連続しているか否かを調べ、noの場合はス
テップS3に戻り、yesの場合はステップS6に進
む。
In step S1, the continuous character counter N is set to 0 and one character is input. In step S2, it is checked whether or not the process is completed. If yes, the process proceeds to step S13,
In the case of, it progresses to step S3. In step S3, one character is input. In step S4, it is checked whether or not the process is finished.
In the case of yes, it progresses to step S13, and in the case of no, it progresses to step S5. In step S5, it is checked whether or not the input character is continuous with the previous character. If no, the process returns to step S3, and if yes, the process proceeds to step S6.

【0043】ステップS6では 連続文字カウンタNを
+1し、1文字入力する。ステップS7では、入力した
文字が前の文字と連続しているか否かを調べ、yesの
場合はステップS8に進み、noの場合はステップS9
に進む。ステップS8では、終了か否かを調べ、yes
の場合はステップS9に進み、noの場合はステップS
6に戻る。
In step S6, the continuous character counter N is incremented by 1 and one character is input. In step S7, it is checked whether or not the input character is continuous with the previous character. If yes, the process proceeds to step S8, and if no, step S9.
Proceed to. In step S8, it is checked whether or not it is finished, and yes.
If yes, go to step S9; if no, go to step S9
Return to 6.

【0044】ステップS9では、不連続文字を出力す
る。不連続文字出力とは、ステップS5で連続文字が検
出されるまでに入力済の連続していない文字列を,作業
バッファ(第1レコードの場合は入力バッファ)から出
力バッファへ出力する処理である。出力では、記憶して
いた不連続文字の出力開始ポインタから,不連続文字数
分の文字列を出力する。ステップS10では、連続文字
列が「00」の連続であることを条件として、「00」が連
続していることを表す制御文字「β」を出力域に出力す
る。
In step S9, discontinuous characters are output. The discontinuous character output is a process of outputting a discontinuous character string that has been input until a continuous character is detected in step S5, from the work buffer (input buffer in the case of the first record) to the output buffer. . In the output, the character string for the number of discontinuous characters is output from the stored output start pointer of the discontinuous characters. In step S10, the control character "β" representing that "00" is continuous is output to the output area on condition that the continuous character string is "00".

【0045】ステップS11では、連続文字列が「00」
の連続でないことを条件として、連続文字と,連続して
いることを表す制御文字「α」を出力域に出力する。ス
テップS12では、連続文字カウンタNの値を出力域に
出力すると共に、連続文字カウンタNを0にする。次に
ステップS2に戻る。ステップS13では、不連続文字
を出力し、エンドとする。
At step S11, the continuous character string is "00".
Under the condition that is not continuous, the continuous character and the control character "α" indicating that it is continuous are output to the output area. In step S12, the value of the continuous character counter N is output to the output area and the continuous character counter N is set to 0. Then, the process returns to step S2. In step S13, the discontinuous character is output and is set to the end.

【0046】「000000000000000000000000000007」と言
うレコードを図5の方法で圧縮すると、「00α0D07」が
生成されるが、「000000000000000000000000000007」と
言うレコードを図7の方法で圧縮すると、「β0D07」が
生成され、さらに1バイト短くなる。
When the record "000000000000000000000000000007" is compressed by the method of FIG. 5, "00α0D07" is generated. When the record "000000000000000000000000000007" is compressed by the method of FIG. 7, "β0D07" is generated, and further One byte shorter.

【0047】図8は本発明のレコードの伸長処理の1例
の処理フローを示す図である。図8のレコードの伸長処
理は、図7のレコードの圧縮処理で圧縮された圧縮レコ
ードを伸長するものである。図8の処理フローは、図6
の処理フロー中のステップS2の処理を詳細に説明する
図である。ステップS1では、入力域の入力レコードか
ら1文字を読み込む。ステップS2では、読み込んだ文
字が制御文字か否かを調べ、yesの場合はステップS
3に進み、noの場合はステップS6に進む。ステップ
S3では、制御文字の直前までの文字列を出力域に出力
する。ステップS4では、制御文字=「β」であること
を条件として、「β」の次の1文字で示される回数+1
の「00」を出力域に出力する。
FIG. 8 is a diagram showing a processing flow of an example of the record decompression processing of the present invention. The decompressing process of the record of FIG. 8 is to decompress the compressed record compressed by the compressing process of the record of FIG. 7. The processing flow of FIG. 8 is as shown in FIG.
It is a figure explaining in detail the process of step S2 in the process flow of FIG. In step S1, one character is read from the input record in the input area. In step S2, it is checked whether the read character is a control character. If yes, step S2
If No, go to step S6. In step S3, the character string up to immediately before the control character is output to the output area. In step S4, on condition that the control character = “β”, the number of times indicated by one character next to “β” +1
"00" of is output to the output area.

【0048】ステップS5では、制御文字=「α」であ
ることを条件として、「α」の直前の1文字を,「α」
の次の1文字で示される回数だけ出力域に出力する。ス
テップS6では、レコードの終端に達しているか否かを
調べ、レコードの終端に達していない場合には、ステッ
プS1に戻り、終端に達している場合はエンドとする。
In step S5, one character immediately before "α" is changed to "α" on condition that the control character is "α".
Output to the output area the number of times indicated by the next character. In step S6, it is checked whether the end of the record has been reached. If the end of the record has not been reached, the process returns to step S1. If the end has been reached, the end is determined.

【0049】図9は本発明におけるブロック域への圧縮
データの格納を説明する図である。図15(a) に示した
ように、従来の技術では、圧縮データの出力用バッファ
内に主リミット・ポインタMと副リミット・ポインタS
を設定し、圧縮データの出力後のバッファ内実ポインタ
Pが副リミット・ポインタS以上の場合、出力バッファ
への圧縮データの出力処理を取り止める出力制御(パタ
ーン1方式と呼ぶ)を行っていた。このため、圧縮元レ
コード長が大きい場合はブロック内に大きな空領域が生
じ、圧縮効率を低下させていた。
FIG. 9 is a diagram for explaining the storage of compressed data in the block area according to the present invention. As shown in FIG. 15A, in the conventional technique, the main limit pointer M and the sub limit pointer S are provided in the compressed data output buffer.
And the actual pointer P in the buffer after the output of the compressed data is equal to or more than the sub limit pointer S, the output control (called the pattern 1 method) for stopping the output processing of the compressed data to the output buffer is performed. For this reason, when the compression source record length is large, a large empty area is generated in the block, which reduces the compression efficiency.

【0050】この問題の改善策として、図15(b) に示
したように、圧縮データをいったん作業バッファに出力
し、圧縮後のデータ・サイズとバッファ内空領域サイズ
(M−P)とを比較して、出力バッファに出力可能なこ
とを条件として作業域の圧縮データを出力バッファに転
送し、圧縮効率を高める出力制御方式(パターン2方式
と呼ぶ)がある。しかし、パターン2方式では、レコー
ド毎にデータ転送処理が行われるため、処理時間が大幅
に低下すると言う別の問題が生ずる。
As a remedy for this problem, as shown in FIG. 15 (b), the compressed data is temporarily output to the work buffer, and the data size after compression and the free space size in buffer (MP) are calculated. In comparison, there is an output control method (referred to as a pattern 2 method) that transfers compressed data in the work area to the output buffer on the condition that the data can be output to the output buffer and improves compression efficiency. However, in the pattern 2 method, since the data transfer process is performed for each record, another problem that the processing time is significantly reduced occurs.

【0051】そこで、本発明では、出力バッファ内の実
ポインタPが副リミット・ポインタSより小の時はパタ
ーン1方式で圧縮を行い、実ポインタPが副リミット・
ポインタS以上になった時点でパターン2方式に切り換
える制御を行い、出力バッファ内の空領域を最小にし、
且つ処理時間の低下を最低限に抑えることを可能にし
た。図示の例では、1つのブロック域内に6個の圧縮デ
ータが格納され、しかも作業域への転送が2回で済んで
いる。なお、ブロックの先頭には当該ブロックには何個
の圧縮データが存在するかを示す管理情報が付加され
る。
Therefore, in the present invention, when the real pointer P in the output buffer is smaller than the sub limit pointer S, compression is performed by the pattern 1 method, and the real pointer P is sub limit limit.
When the pointer becomes equal to or higher than the pointer S, control is performed to switch to the pattern 2 system to minimize the empty area in the output buffer,
In addition, it is possible to minimize the decrease in processing time. In the illustrated example, six pieces of compressed data are stored in one block area, and the transfer to the work area is completed only twice. In addition, management information indicating how many compressed data are present in the block is added to the head of the block.

【0052】図10は本発明のブロック域への圧縮デー
タの格納処理フローを説明する図である。ステップS1
では、出力域内の主リミット・ポインタMと副リミット
・ポインタSを設定する。ステップS2では、レコード
を入力域に読み込む。ステップS3では、出力域内の実
ポインタPが副リミット・ポインタSより小であるか否
を調べる。yesの場合にはステップS4に進み、no
の場合にはステップS5に進む。
FIG. 10 is a diagram for explaining the storage processing flow of the compressed data in the block area according to the present invention. Step S1
Then, the main limit pointer M and the sub limit pointer S in the output area are set. In step S2, the record is read into the input area. In step S3, it is checked whether the actual pointer P in the output area is smaller than the sub limit pointer S. If yes, go to step S4, no
In the case of, it progresses to step S5.

【0053】ステップS4では、圧縮結果の出力先を出
力域にして、圧縮処理を行う。次に、ステップS8に進
む。ステップS5では、圧縮結果の出力先を作業域にし
て、圧縮処理を行う。ステップS6では、実ポインタP
と圧縮後のデータ・サイズCとを加算したものが主リミ
ット・ポインタMより大であるか否かをを調べる。ye
sの場合はエンドとし、noの場合にはステップS7 に
進む。ステップS7では、作業域の圧縮結果を出力域に
出力する。
In step S4, the compression process is performed with the output destination of the compression result as the output area. Next, it progresses to step S8. In step S5, the output destination of the compression result is set to the work area and compression processing is performed. In step S6, the actual pointer P
It is checked whether the sum of the data size C and the compressed data size C is larger than the main limit pointer M. ye
In the case of s, the processing is ended, and in the case of no, the processing proceeds to step S7. In step S7, the compression result of the work area is output to the output area.

【0054】ステップS8では、実ポインタPに圧縮後
のデータ・サイズCを加算して、実ポインタPを更新す
る。ステップS9ではレコードが未だあるか否かを調
べ、未だある場合にはステップS2に戻り、ない場合は
エンドとする。
In step S8, the compressed data size C is added to the real pointer P to update the real pointer P. In step S9, it is checked whether or not the record still exists. If the record still exists, the process returns to step S2, and if it does not exist, the process ends.

【0055】図示の例では、データ4の書込みが行われ
た後で実ポインタPが副リミット・ポインタSより大き
くなるので、データ5,データ6はパターン2方式で出
力域に書き込まれる。データ7の書込み時には主リミッ
ト・ポインタMより大になるので、データ7はこの出力
域に書き込まれない。なお、図9および図10で説明し
たブロック域への圧縮データの格納処理は、特定の圧縮
アルゴリズムによらず、一般に圧縮データを一定サイズ
のブロック単位で管理する方式において適用可能であ
る。
In the illustrated example, since the actual pointer P becomes larger than the sub limit pointer S after the writing of the data 4, the data 5 and the data 6 are written in the output area by the pattern 2 method. Since the data 7 becomes larger than the main limit pointer M when the data 7 is written, the data 7 is not written in this output area. The storage process of the compressed data in the block area described with reference to FIGS. 9 and 10 is generally applicable to a method of managing the compressed data in block units of a fixed size, regardless of a specific compression algorithm.

【0056】図11は本発明における媒体異常発生時の
圧縮データの復元を説明するものである。図16に示す
ように、従来の技術では、媒体異常が発生したら直ちに
処理を打ち切っていたので、大部分のデータが消失する
と言う問題点があった。本発明では、媒体異常が発生し
たブロック内の可能な部分は全て伸長し、さらに後続ブ
ロックの処理を継続するため、一部分のデータの消失で
済む。図11の例では、ブロック2の4番目の圧縮デー
タのみが無効にされ、他の圧縮データについては伸長処
理を行っている。
FIG. 11 illustrates the restoration of compressed data when a medium abnormality occurs in the present invention. As shown in FIG. 16, in the conventional technique, the processing is terminated immediately when the medium abnormality occurs, so that there is a problem that most of the data is lost. According to the present invention, all possible portions in the block in which the medium abnormality has occurred are expanded, and the processing of subsequent blocks is continued, so that partial data loss is sufficient. In the example of FIG. 11, only the fourth compressed data of block 2 is invalidated, and the decompression processing is performed for other compressed data.

【0057】図12は本発明の媒体異常発生時の圧縮デ
ータの復元処理フローを示す図である。ステップS1で
は、レコードを入力域に読み込む。ステップS2では、
媒体異常が発生しているか否かを調べ、yesの場合は
ステップS6に進み、noの場合はステップS3に進
む。なお、データ・ファイルから1ブロックのデータを
読込む過程で媒体異常が発生した場合には、このブロッ
クの読込み中に媒体異常が発生したことを示すフラグ情
報と,入力バッファ内で何処までが正常に読み込まれた
かを示す異常箇所ポインタEとを、メモリ上の制御テー
ブル内に設定する。
FIG. 12 is a diagram showing a flow of processing for restoring compressed data when a medium abnormality occurs according to the present invention. In step S1, the record is read into the input area. In step S2,
Whether or not a medium abnormality has occurred is checked. If yes, the process proceeds to step S6, and if no, the process proceeds to step S3. If a medium error occurs during the process of reading one block of data from the data file, the flag information indicating that a medium error has occurred while reading this block and what is normal in the input buffer The abnormal point pointer E indicating whether or not it has been read is set in the control table on the memory.

【0058】ステップS3では、通常の伸長処理を行
い、結果を出力域に出力する。ステップS4では、レコ
ードがまだ有るか否かを調べ、まだ有る場合はステップ
S1に戻り、ない場合はステップS5に進む。ステップ
S5では、エンドとする。
In step S3, normal expansion processing is performed and the result is output to the output area. In step S4, it is checked whether or not the record still exists, and if it exists, the process returns to step S1. If not, the process proceeds to step S5. In step S5, the end is set.

【0059】ステップS6では、入力域の実ポインタP
が入力域内の異常箇所ポインタEより小であるか否かを
調べる。noの場合はステップS4に進み、yesの場
合はステップS7に進む。ステップS7では、入力域の
実ポインタPで指示された場所から1文字を読み込み、
入力域の実ポインタPを+1する。ステップS8では、
読み込んだ文字が制御文字か否かを調べ、yesの場合
はステップS11に進み、noの場合はステップS9に
進む。
In step S6, the actual pointer P of the input area
Is smaller than the abnormal point pointer E in the input area. If no, the process proceeds to step S4, and if yes, the process proceeds to step S7. In step S7, one character is read from the position designated by the real pointer P in the input area,
The actual pointer P in the input area is incremented by 1. In step S8,
It is checked whether the read character is a control character. If yes, the process proceeds to step S11, and if no, the process proceeds to step S9.

【0060】ステップS9では、読み込んだ文字を出力
域へ出力し、伸長後のデータ・サイズCを+1する。ス
テップS10では、伸長後のデータ・サイズCが圧縮前
のデータ・サイズLより大であるか否かを調べ、yes
の場合はステップS4に進み、noの場合はステップS
6に戻る。
In step S9, the read character is output to the output area and the decompressed data size C is incremented by one. In step S10, it is checked whether the decompressed data size C is larger than the uncompressed data size L, and yes
If yes, go to step S4; if no, go to step S4
Return to 6.

【0061】ステップS11では、入力域の実ポインタ
Pが入力域内の異常箇所ポインタEより小であるか否か
を調べ、noの場合はステップS4に進み、yesの場
合にはステップS12に進む。ステップS12では、入
力域の実ポインタPで指示される場所から1文字(この
場合は連続数N)を読み込み、入力域の実ポインタPを
+1する。ステップS13では、制御文字がαの場合
は、読み込んだ連続文字数Nと伸長後のデータ・サイズ
Cの合計が圧縮前のデータ・サイズLより大であるか否
かを調べ、yesの場合はステップS4に進み、noの
場合はステップS14に進む。制御文字がβの場合は、
読み込んだ連続数N+1と伸長後のデータ・サイズCの
合計が圧縮前のデータ・サイズLより大であるか否かを
調べ、yesの場合はステップS4に進み、noの場合
はステップS14に進む。
In step S11, it is checked whether or not the actual pointer P in the input area is smaller than the abnormal point pointer E in the input area. If no, the process proceeds to step S4, and if yes, the process proceeds to step S12. In step S12, one character (in this case, the consecutive number N) is read from the location designated by the real pointer P in the input area, and the real pointer P in the input area is incremented by one. In step S13, if the control character is α, it is checked whether or not the total of the read consecutive character number N and the decompressed data size C is larger than the uncompressed data size L. If yes, the step If it is no, the process proceeds to step S14. If the control character is β,
It is checked whether or not the total of the read continuous number N + 1 and the decompressed data size C is larger than the data size L before compression. If yes, the process proceeds to step S4, and if no, the process proceeds to step S14. .

【0062】ステップS14では、制御文字がαの場合
は、連続文字をN回だけ出力域に出力する。制御文字が
βの場合は、連続文字をN+1回だけ出力域に出力す
る。ステップS15では、制御文字がαの場合は、伸長
後のデータ・サイズCにNを加算して伸長後のデータ・
サイズCを更新する。次に、ステップS6に戻る。制御
文字がβの場合は、伸長後のデータ・サイズCにN+1
を加算して伸長後のデータ・サイズCを更新する。次
に、ステップS6に戻る。
In step S14, when the control character is α, consecutive characters are output to the output area N times. When the control character is β, consecutive characters are output to the output area N + 1 times. In step S15, when the control character is α, N is added to the decompressed data size C to decompress the decompressed data.
Update size C. Then, the process returns to step S6. When the control character is β, N + 1 is added to the decompressed data size C.
Is added to update the decompressed data size C. Then, the process returns to step S6.

【0063】図11および図12で説明した圧縮データ
の復元処理は、特定の圧縮/伸長アルゴリズムによら
ず、一般に圧縮データを一定サイズのブロック単位で管
理する方式において適用可能である。
The compressed data decompression process described with reference to FIGS. 11 and 12 is generally applicable to a system in which compressed data is managed in block units of a fixed size, regardless of a specific compression / decompression algorithm.

【0064】[0064]

【発明の効果】以上の説明から明らかなように、本発明
によれば、 (i) 簡単な制御による圧縮処理によって、効果的な圧縮
効率が得られ、且つ高速に圧縮処理を行うことが出来
る。 (ii)圧縮データを一定サイズのブロック単位で管理する
ことで、ブロック単位での伸長処理が可能となるため、
異常発生時でも消失する利用者資源を従来方式に比べて
最小限に抑えることが出来る。 などの顕著な効果を奏することが出来る。
As is apparent from the above description, according to the present invention, (i) the compression processing by the simple control can provide the effective compression efficiency and the high-speed compression processing. . (ii) By managing compressed data in block units of a fixed size, decompression processing in block units becomes possible.
User resources that are lost even when an abnormality occurs can be minimized compared to the conventional method. Such a remarkable effect can be achieved.

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

【図1】本発明の原理説明図である。FIG. 1 is a diagram illustrating the principle of the present invention.

【図2】本発明の原理説明図(続き)である。FIG. 2 is an explanatory diagram (continuation) of the principle of the present invention.

【図3】本発明のデータ圧縮処理装置の機能ブロック図
である。
FIG. 3 is a functional block diagram of a data compression processing device of the present invention.

【図4】本発明のデータ伸長処理装置の機能ブロック図
である。
FIG. 4 is a functional block diagram of a data decompression processing device of the present invention.

【図5】本発明の圧縮処理の1例の処理フローを示す図
である。
FIG. 5 is a diagram showing a processing flow of an example of compression processing of the present invention.

【図6】本発明の伸長処理の1例の処理フローを示す図
である。
FIG. 6 is a diagram showing a processing flow of an example of decompression processing of the present invention.

【図7】本発明のレコードの連長圧縮の1例の処理フロ
ーを示すである。
FIG. 7 shows a processing flow of an example of continuous length compression of records according to the present invention.

【図8】本発明のレコードの連長伸長の1例の処理フロ
ーを示す図である。
FIG. 8 is a diagram showing a processing flow of an example of continuous length expansion of records according to the present invention.

【図9】本発明におけるブロック域への圧縮データの格
納を説明する図である。
FIG. 9 is a diagram illustrating storage of compressed data in a block area according to the present invention.

【図10】本発明のブロック域への圧縮データの格納処
理フローを示す図である。
FIG. 10 is a diagram showing a flow of processing for storing compressed data in a block area according to the present invention.

【図11】本発明における媒体異常発生時の圧縮データ
の復元を説明する図である。
FIG. 11 is a diagram illustrating the restoration of compressed data when a medium abnormality occurs in the present invention.

【図12】本発明の媒体異常発生時の圧縮データの復元
処理フローを示す図である。
FIG. 12 is a diagram showing a flow of processing for restoring compressed data when a medium abnormality occurs according to the present invention.

【図13】従来の連長圧縮の処理フローを示す図であ
る。
FIG. 13 is a diagram showing a processing flow of conventional continuous length compression.

【図14】従来の連長伸長の処理フローを示す図であ
る。
FIG. 14 is a diagram showing a processing flow of conventional continuous length extension.

【図15】従来のブロック域への圧縮データの格納を説
明する図である。
FIG. 15 is a diagram illustrating storage of compressed data in a conventional block area.

【図16】従来の媒体異常発生時の圧縮データの復元を
説明する図である。
FIG. 16 is a diagram for explaining the conventional decompression of compressed data when a medium abnormality occurs.

【符号の説明】[Explanation of symbols]

1 入力ファイル 2 入力データ読込み部 3 レコードEOR部 4 レコード連長圧縮部 5 圧縮データ書込み部 6 圧縮ファイル 7 入力バッファ 8 作業バッファ 9 出力バッファ 11 圧縮ファイル 12 圧縮データ読込み部 13 レコード連長伸長部 14 レコードEOR部 15 出力データ書込み部 16 出力ファイル 17 入力バッファ 18 作業バッファ 19 出力バッファ 1 Input File 2 Input Data Reading Section 3 Record EOR Section 4 Record Continuous Length Compressing Section 5 Compressed Data Writing Section 6 Compressed File 7 Input Buffer 8 Work Buffer 9 Output Buffer 11 Compressed File 12 Compressed Data Reading Section 13 Record Continuous Length Expansion Section 14 Record EOR section 15 Output data writing section 16 Output file 17 Input buffer 18 Work buffer 19 Output buffer

Claims (12)

【特許請求の範囲】[Claims] 【請求項1】 1個または複数個のレコードを格納する
入力バッファと、レコード排他的論理和演算部およびレ
コード連長圧縮部を有する圧縮処理手段と、1個または
複数個の圧縮データを格納する出力バッファとを具備
し、 圧縮処理手段は、入力バッファからレコードを取り出
し、取り出したレコードが最初のものである場合には、
取り出したレコードを作業域に格納すると共に、レコー
ド連長圧縮部によって連長圧縮し、連長圧縮の結果を出
力バッファに格納し、 取り出したレコードが最初のレコードに後続するレコー
ドである場合には、取り出したレコードと作業域に格納
されている一つ前のレコードをレコード排他的論理和演
算部によって排他的論理和演算し、排他的論理和演算の
結果をレコード連長圧縮部によって連長圧縮し、取り出
したレコードを作業域に書き込むと共に連長圧縮の結果
を出力バッファに格納することを特徴とするデータ圧縮
処理装置。
1. An input buffer for storing one or a plurality of records, a compression processing means having a record exclusive OR operation section and a record run length compression section, and one or a plurality of compressed data. And an output buffer, wherein the compression processing means fetches a record from the input buffer, and if the fetched record is the first one,
Stores the retrieved record in the work area, compresses it continuously with the record concatenation compression unit, stores the result of the concatenation length compression in the output buffer, and when the retrieved record is the record following the first record, , The record fetched and the previous record stored in the work area are subjected to exclusive OR operation by the record exclusive OR operation part, and the result of the exclusive OR operation is continuous length compressed by the record continuous length compression part. The data compression processing apparatus is characterized in that the fetched record is written in the work area and the result of the continuous length compression is stored in the output buffer.
【請求項2】 1個または複数個の圧縮データを格納す
る入力バッファと、レコード連長伸長部およびレコード
排他的論理和演算部を有する伸長処理手段と、1個また
は複数個のレコードを格納する出力バッファとを具備
し、 伸長処理手段は、入力バッファから圧縮データを取り出
し、取り出した圧縮データが最初のものである場合に
は、当該圧縮データをレコード連長伸長部によって連長
伸長し、連長伸長の結果を作業域および出力バッファに
書き込み、 取り出した圧縮データが最初の圧縮データに後続するも
のである場合には、当該圧縮データをレコード連長伸長
部によって連長伸長し、連長伸長の結果得られたレコー
ドと作業域のレコードをレコード排他的論理和演算部に
よって排他的論理和演算し、排他的論理和演算の結果を
作業域および出力バッファに書き込むことを特徴とする
データ伸長処理装置。
2. An input buffer for storing one or more compressed data, a decompression processing means having a record run length decompression unit and a record exclusive OR operation unit, and one or more records. The decompression processing unit fetches the compressed data from the input buffer, and if the fetched compressed data is the first one, the decompressed data is continuously decompressed by the record concatenated decompression unit and concatenated. The result of the long decompression is written to the work area and the output buffer, and if the extracted compressed data follows the first compressed data, the record continuous length decompressor is used to continuously expand the compressed data. The record obtained as a result of the above and the record in the work area are subjected to exclusive OR operation by the record exclusive OR operation part, and the result of the exclusive OR operation is made to the work area. Data expanding device and writes to the spare output buffers.
【請求項3】 レコード連長圧縮部が、 所定の文字の複数個の連続した並びとして構成される文
字列を、特定制御文字と当該特定制御文字に続く上記所
定の文字の個数を示す文字とで表し、 これ以外の文字の複数個の連続した並びとして構成され
る文字列を、当該文字と,それに後続する他の特定制御
文字と,それに後続する当該文字の個数を示す文字とで
表すことを特徴とする請求項1のデータ圧縮処理装置。
3. The record consecutive length compression unit includes a character string configured as a plurality of consecutive sequences of a predetermined character as a specific control character and a character indicating the number of the predetermined character following the specific control character. , A character string composed of a continuous sequence of other characters is represented by the character, another specific control character that follows it, and a character that indicates the number of that character that follows it. The data compression processing device according to claim 1.
【請求項4】 レコード連長伸長部が、 圧縮データの中に特定制御文字が現れた場合には、当該
特定制御文字に後続する文字で示される個数+1だけ、
所定の文字を出力し、 圧縮データの中に他の特定制御文字が現れた場合には、
当該他の特定制御文字に後続する文字で示される個数だ
け、当該他の特定制御文字の直前に存在する文字を出力
することを特徴とする請求項2のデータ伸長処理装置。
4. When the specific control character appears in the compressed data, the record continuous length decompressing unit is equal to the number +1 indicated by the character following the specific control character,
Output the specified character, and if other specific control characters appear in the compressed data,
The data decompression processing device according to claim 2, wherein the character existing immediately before the other specific control character is output by the number indicated by the character following the other specific control character.
【請求項5】 レコードを圧縮して得られた圧縮データ
が書き込まれる出力バッファと、作業バッファと、出力
バッファにおけるブロックの区切りを示す主リミット・
ポインタと、主リミット・ポインタから圧縮元レコード
のデータ・サイズによって定まるサイズを差し引いた位
置を示す副リミット・ポインタと、出力バッファにおけ
るデータ書込位置を示す実ポインタと、レコードを圧縮
して出力バッファに書き込む圧縮処理手段とを具備し、 圧縮処理手段は、 実ポインタが副リミット・ポインタより小である場合に
は、レコードの圧縮結果を出力バッファに書き込み、次
いで実ポインタを更新し、 実ポインタが副リミット・ポインタ以上の場合には、レ
コードの圧縮結果を作業バッファに書き込み、次に実ポ
インタに圧縮結果のデータ・サイズを加算したものが主
リミット・ポインタ以下であることを条件として作業バ
ッファの圧縮結果を出力バッファに格納し、次に実ポイ
ンタの更新を行うことを特徴とするデータ圧縮処理装
置。
5. An output buffer to which compressed data obtained by compressing a record is written, a work buffer, and a main limit indicating a block delimiter in the output buffer.
Pointer, main limit pointer, sub-limit pointer that indicates the position where the size determined by the data size of the compression source record is subtracted, real pointer that indicates the data write position in the output buffer, and output buffer that compresses the record When the real pointer is smaller than the sub-limit pointer, the compression processing means writes the compression result of the record to the output buffer, then updates the real pointer, and the real pointer is If it is greater than or equal to the secondary limit pointer, the compression result of the record is written to the work buffer, and then the actual pointer plus the data size of the compression result is less than or equal to the main limit pointer. The compression result is stored in the output buffer, and then the actual pointer is updated. Data compression apparatus for treating.
【請求項6】 レコードを圧縮して得られた圧縮データ
を格納する入力バッファと、媒体異常発生箇所を示す値
を記憶する異常箇所ポインタと、入力バッファのブロッ
ク内における文字読込位置を示す実ポインタと、データ
・ファイルからブロック単位で圧縮データを読み込んで
入力バッファに格納すると共にブロック読込みの過程に
おいて媒体異常が発生した時には媒体異常の位置を示す
ブロック内相対位置を異常箇所ポインタにセットするデ
ータ読込処理手段と、圧縮データを伸長する処理を行う
伸長処理手段とを具備し、 伸長処理手段は、 ブロック読込みの過程において媒体異常が発生していな
い場合は、当該ブロックに含まれている圧縮データを全
て伸長し、 媒体異常が発生している場合には、実ポインタが異常箇
所ポインタに達するまで、当該ブロックに含まれている
圧縮データの伸長処理を行うことを特徴とするデータ伸
長処理装置。
6. An input buffer for storing compressed data obtained by compressing a record, an abnormal point pointer for storing a value indicating a medium abnormal point, and an actual pointer for indicating a character reading position in a block of the input buffer. Read the compressed data from the data file in block units, store it in the input buffer, and when the medium error occurs in the process of reading the block, set the relative position within the block that indicates the position of the medium error in the abnormal point pointer. It comprises a processing means and a decompression processing means for decompressing the compressed data, and the decompression processing means, when a medium error has not occurred in the process of reading the block, compresses the compressed data contained in the block. When all media are expanded and a media error occurs, the actual pointer reaches the error location pointer. The data decompression processing device is characterized in that it decompresses the compressed data included in the block until the end.
【請求項7】 1個または複数個のレコードを格納する
入力バッファからレコードを取り出し、 取り出したレコードが最初のものである場合には、取り
出したレコードを作業域に格納すると共に連長圧縮し、
連長圧縮の結果を出力バッファに格納し、 取り出したレコードが最初のレコードに後続するレコー
ドである場合には、取り出したレコードと作業域に格納
されている一つ前のレコードとを排他的論理和演算し、
排他的論理和演算の結果を連長圧縮し、取り出したレコ
ードを作業域に書き込むと共に連長圧縮の結果を出力バ
ッファに格納することを特徴とするデータ圧縮処理方
法。
7. A record is fetched from an input buffer storing one or a plurality of records, and if the fetched record is the first one, the fetched record is stored in a work area and compressed for continuous length,
Stores the result of run-length compression in the output buffer, and when the fetched record is the record following the first record, the fetched record and the previous record stored in the work area are subjected to exclusive logic. Sum operation,
A data compression processing method characterized in that a result of an exclusive OR operation is subjected to continuous length compression, a fetched record is written to a work area, and a result of the continuous length compression is stored in an output buffer.
【請求項8】 1個または複数個の圧縮データを格納す
る入力バッファから圧縮データを取り出し、 取り出した圧縮データが最初のものである場合には、当
該圧縮データを連長伸長し、連長伸長の結果を作業域お
よび出力バッファに書き込み、 取り出した圧縮データが最初の圧縮データに後続するも
のである場合には、当該圧縮データを連長伸長し、連長
伸長の結果得られたレコードと作業域のレコードとを排
他的論理和演算し、排他的論理和演算の結果を作業域お
よび出力バッファに書き込むことを特徴とするデータ伸
長処理方法。
8. The compressed data is extracted from an input buffer storing one or a plurality of compressed data, and if the extracted compressed data is the first one, the compressed data is expanded by continuous length and expanded by continuous length. The result of is written to the work area and the output buffer, and if the extracted compressed data is subsequent to the first compressed data, the compressed data is expanded continuously, and the record and work obtained as a result of continuous expansion are A data decompression processing method characterized by performing an exclusive OR operation with a record in an area and writing the result of the exclusive OR operation to a work area and an output buffer.
【請求項9】 所定の文字の複数個の連続した並びとし
て構成される文字列を、特定制御文字と当該特定制御文
字に続く上記所定の文字の個数を示す文字とで表し、 これ以外の文字の複数個の連続した並びとして構成され
る文字列を、当該文字と,それに後続する他の特定制御
文字と,それに後続する当該文字の個数を示す文字とで
表すことを特徴とする請求項7のデータ圧縮処理方法。
9. A character string composed of a plurality of consecutive predetermined characters is represented by a specific control character and a character indicating the number of the predetermined characters following the specific control character, and other characters 7. A character string configured as a plurality of continuous sequences of the above is represented by the character, another specific control character following the character, and a character indicating the number of the characters following the character. Data compression processing method.
【請求項10】 圧縮データの中に特定制御文字が現れ
た場合には、当該特定制御文字に後続する文字で示され
る個数+1だけ、所定の文字を出力し、 圧縮データの中に他の特定制御文字が現れた場合には、
当該他の特定制御文字に後続する文字で示される個数だ
け、当該他の特定制御文字の直前に存在する文字を出力
することを特徴とする請求項8のデータ伸長処理方法。
10. When a specific control character appears in the compressed data, a predetermined character is output by the number +1 indicated by the character following the specific control character, and another specific character is output in the compressed data. If a control character appears,
9. The data decompression processing method according to claim 8, wherein the character existing immediately before the other specific control character is output by the number indicated by the character following the other specific control character.
【請求項11】 出力バッファにおけるブロックの区切
りを示す主リミット・ポインタ,主リミット・ポインタ
から圧縮元レコードのデータ・サイズによって定まるサ
イズを差し引いた位置を示す副リミット・ポインタおよ
び出力バッファにおけるデータ書込位置を示す実ポイン
タを設定し、 入力バッファからレコードを読み込み、実ポインタが副
リミット・ポインタより小である場合には、読み込んだ
レコードの圧縮結果を出力バッファに書き込み、次いで
実ポインタを更新し、 実ポインタが副リミット・ポインタ以上の場合には、読
み込んだレコードの圧縮結果を作業バッファに書き込
み、次に実ポインタに圧縮結果のデータ・サイズを加算
したものが主リミット・ポインタ以下であることを条件
として作業バッファの圧縮結果を出力バッファに格納
し、次に実ポインタの更新を行うことを特徴とするデー
タ圧縮処理方法。
11. A main limit pointer indicating a block delimiter in the output buffer, a sub limit pointer indicating a position obtained by subtracting a size determined by the data size of the compression source record from the main limit pointer, and data writing in the output buffer. Set the real pointer indicating the position, read the record from the input buffer, and if the real pointer is less than the secondary limit pointer, write the compressed result of the read record to the output buffer, then update the real pointer, If the actual pointer is greater than or equal to the sub-limit pointer, write the compression result of the read record into the work buffer, and then add the actual pointer plus the data size of the compression result and make sure it is less than or equal to the main limit pointer. Output the work buffer compression result as a condition. Stored in the file, then the data compression processing method characterized by updating the actual pointer.
【請求項12】 外部記憶装置上のデータ・ファイルか
ら1ブロックの圧縮データを入力バッファに読み込み、
読込みの過程で媒体異常が発生した場合には、入力バッ
ファに何処まで圧縮データが正常に読み込まれたかを示
す値を異常箇所ポインタに書き込むと共に、媒体異常が
発生したことを記憶し、 ブロック読込みの過程において媒体異常が発生していな
い場合は、当該ブロックに含まれている圧縮データを全
て伸長し、 媒体異常が発生している場合には、実ポインタが異常箇
所ポインタに達するまで、当該ブロックに含まれている
圧縮データの伸長処理を行うことを特徴とするデータ伸
長処理方法。
12. An input buffer is loaded with one block of compressed data from a data file on an external storage device,
If a media error occurs during the reading process, a value indicating how much compressed data has been normally read in the input buffer is written to the error location pointer, and the media error is stored, and the block read If there is no media error in the process, decompress all the compressed data contained in the block, and if there is a media error, move to the block until the actual pointer reaches the abnormal location pointer. A method for decompressing data, comprising decompressing included compressed data.
JP6140310A 1994-06-22 1994-06-22 Data compression processing device, data decompression processing device, data compression processing method, and data decompression processing method for data file Expired - Fee Related JP2943900B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6140310A JP2943900B2 (en) 1994-06-22 1994-06-22 Data compression processing device, data decompression processing device, data compression processing method, and data decompression processing method for data file

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6140310A JP2943900B2 (en) 1994-06-22 1994-06-22 Data compression processing device, data decompression processing device, data compression processing method, and data decompression processing method for data file

Publications (2)

Publication Number Publication Date
JPH086759A true JPH086759A (en) 1996-01-12
JP2943900B2 JP2943900B2 (en) 1999-08-30

Family

ID=15265828

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6140310A Expired - Fee Related JP2943900B2 (en) 1994-06-22 1994-06-22 Data compression processing device, data decompression processing device, data compression processing method, and data decompression processing method for data file

Country Status (1)

Country Link
JP (1) JP2943900B2 (en)

Also Published As

Publication number Publication date
JP2943900B2 (en) 1999-08-30

Similar Documents

Publication Publication Date Title
JP2534465B2 (en) Data compression apparatus and method
JP3225638B2 (en) Apparatus and method for compressing data and data processing system
JPH0828053B2 (en) Data recording method
JPH04360246A (en) Device for compressing file
JP2003510881A (en) Method and apparatus for reducing the time required to deploy data
JP5709903B2 (en) METHOD, SYSTEM, COMPUTER PROGRAM, RECORDING MEDIUM, DATA STORAGE MEDIUM STORING DATA COLLECTION, AND CALL DATA RECORDING SYSTEM FOR COMPRESSING DATA RECORD AND PROCESSING COMPRESSED DATA RECORD
JP2943900B2 (en) Data compression processing device, data decompression processing device, data compression processing method, and data decompression processing method for data file
JP2863370B2 (en) File compression encryption processor
JP3038223B2 (en) Data compression method
JPH04241681A (en) Storage device of compression switching system
JP3242795B2 (en) Data processing device and data processing method
JPH06274279A (en) Mirrored disk and its control system
JPH06337762A (en) Compressing method and restoring method for data base record
JPS5953579B2 (en) character compression device
JPH03164951A (en) File data storing device
JPH05108304A (en) Data compression system
CN112988685A (en) Data compression and decompression method and device
JP2999587B2 (en) Data compression and decompression method
JPH0563583A (en) Data compression and decoding method and backup method in electronic exchange using said method
JP3012678B2 (en) Data compression method
JP3186530B2 (en) How to compress and expand computer data
JPS63182155A (en) Font pattern imaging device
JP3054183B2 (en) Dictionary rewriting method of data compression device
JPH08161148A (en) Data segmenting device
JPH0887398A (en) Encoding and decoding system, and information processor

Legal Events

Date Code Title Description
S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees