JPS60116228A - ディジタル信号ストリーム圧縮方法及び圧縮装置 - Google Patents

ディジタル信号ストリーム圧縮方法及び圧縮装置

Info

Publication number
JPS60116228A
JPS60116228A JP59125473A JP12547384A JPS60116228A JP S60116228 A JPS60116228 A JP S60116228A JP 59125473 A JP59125473 A JP 59125473A JP 12547384 A JP12547384 A JP 12547384A JP S60116228 A JPS60116228 A JP S60116228A
Authority
JP
Japan
Prior art keywords
code
string
signal
character
address
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
JP59125473A
Other languages
English (en)
Other versions
JPH0568893B2 (ja
Inventor
テリイ・アーチヤー・ウエルチ
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.)
Sperry Corp
Original Assignee
Sperry Corp
Sperry Rand Corp
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=24011192&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JPS60116228(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Sperry Corp, Sperry Rand Corp filed Critical Sperry Corp
Publication of JPS60116228A publication Critical patent/JPS60116228A/ja
Publication of JPH0568893B2 publication Critical patent/JPH0568893B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3084Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
    • H03M7/3088Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method employing the use of a dictionary, e.g. LZ78

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
CI)発明の目的 (1)発明の分野 本発明はデータ圧縮及び圧縮データの復元(decam
−pression) の分野に関するものである。 (2)従来技術 ディジタル・データ信号のストリームを圧縮さしたディ
ジタル・データ信号に符号化して、圧縮されたディジタ
ル・データ信号を元のデータ信号に復号するデータ圧縮
装置が従来知られている。 データ圧縮とは、与えられたフォーマットのデータを元
のものよシ少ないピットをもつもう一つのフォーマット
に変換するすべての処理をいう。データ圧縮装置の目的
はディジタル情報の与えられた主要部を保持するに必要
な記憶装置の量またはその主要部を伝送するに必要な時
間の量を節病することである。圧縮比は、符号化はれた
データの長さの元の入力データの長さに対する比として
定義烙れる。圧縮比が小さければ小さいほど、記憶域ま
たは時間の節約が大きくなる。データ記憶に必要な記憶
装置またはデータ伝送に必要な時間を減らすことによっ
て、圧縮は金銭上の節約をもたらす。磁気ディスク−ま
たは磁気テープのような物理的装置がデータファイルの
格納に用いられれば、圧縮されたデータを格納する装置
に必要なスペースが小さくなって利用するディスクまた
はテープが少なくなる。電話線またはサテライト・リン
クをディジタル情報の伝送に用いる場合、伝送の前にデ
ータを圧縮するとコストが下がる。データ圧縮装置は、
元のデータが記号またi−1:記号のス) リングに高
い頻度で現れきせるような冗長性金倉む場合に特に有効
である。データ圧縮装置がデータの入力ブロックをより
簡潔な形に変換し、そのらとでその簡潔な形を逆にそれ
の元のフォーマットの元のデータに翻訳または復元する
。 例えば、日刊新聞の内容をサテライト・リンクを経て遠
隔の地に伝送して、そこで印刷することが望まれること
がある。適当なセンサが新聞の内容を直列に発生する文
字のデータ・ストリームに変換して、通信リンクを介し
て伝送することができる。新聞の内容を含む何百万の記
号が伝送前に圧縮されて受信者のところで再構成される
とすればかりの量の伝送時間が節約されるであろう。 別の例として、定期航空路予約データベースまたはバン
キング・システム・データベースなどの広範囲なデータ
ベースが記録保管の目的で格納されるとき、データベー
スを構成する文字の全体が記憶に先だって圧縮されて、
あとで使用するには格納された圧縮ファイルから再び広
げられるとすれば、かなシの量の記憶スペースが節約さ
れるであろう。 (η 発明が解決しようとする問題点 実際にそして一般に役立つようにするためには、ディジ
タル・データ圧縮装置がある基糸を満足する必要がある
。この装置はデータ圧縮及び復元装置が仲介している機
器によって授受されるデータ速度に関して高い性能を与
える必要がある。データ圧縮できる速度は、圧縮装置に
入る入力データ処理速度によって決まり、普通数百万バ
イト毎秒(メガバイト7秒)である。普通1メガバイト
/秒を超える速度をもつ今日のディスク、テープ及び通
信装置に2いて達成されたデータ速度を保つには高性能
が必要である。従って、データ圧縮装置及びデータ復元
装置は、最近の装置で達成される帯域中に一致するデー
タ帯域中をもっていなければならない。従来のデータ圧
縮装置及びデータ復元装置の性能は、普通、統計的デー
タを記憶して圧縮処理及び復元処W’(r管理するのに
用いられるランダムアクセス記憶装置(RAM)などの
速度によって制限される。圧縮装置に対する高性能は、
圧縮器に入る入力文字ごとに必要なramサイクル(読
み書き動作)の数によって特徴づけられる。記憶サイク
ルの数が少なければ少ないほど性能は高い。高性能設計
を電話通信等の低速度の適用業務に対して経済的な低速
RA Mを用いて利用でき、または磁気ディスク転送に
対して超高速RAMを用いて利用できる。 データ圧縮及び復元装置の設計におけるもう一つの重要
な基準は、圧縮有効度である。圧縮有効度は装置の圧縮
比によって特徴づけられる。圧綬比は、データ記憶域の
圧縮された形の大きさを圧縮されていない形の大きさで
割った比である。データが圧縮可能であるためには、そ
のデータは、冗長を含んでいなければならない。圧縮有
効性は、圧縮手順が入力データにおける冗長のいろいろ
な形にいかに有効に調和するかによって決められる。 代表的なコンピュータに記憶されたデータ、例えば整数
の配列、テキストまたはプログラムなどに訃いて、冗長
は個々の記号表記法、例えば数字、バイト、または文字
の不統一な使用と共通語などの記号列、空白記録欄など
の頻繁な繰返しの両方において起こる。有効なデータ圧
縮装置は、両方の形式の冗長に応じる必要がある。 データ圧縮及び復元装置の設計における別の重要な基準
は、適応性の基準である。多くの従来のデータ圧縮手順
は、圧縮されようとするデータの以前の知識または統計
を必要とする。従来の手順のあるものは、データが受け
られるときのデータの統計に適応する。従来の処理にお
ける適応性は、法外な複雑度を必要とした。普通には、
汎用コンピュータ施設における必要条件である広範囲の
情報形式にわたって適応圧縮及び復元装置を用いること
ができる。圧縮装置は、データ続開の以前の知識がなく
ても良好な圧縮比を達成することが望寸しい。現在利用
できるデータ圧縮及び復元手順は、一般には適応できな
いので、それを汎用用途には利用できない。 データ圧縮及び復元装置の設計におけるもう一つの重要
な基糸は、可逆性の基桑である。データ圧縮装置が可逆
性の性質をもつためには、その装置は、圧縮されたデー
タを情報の変質捷たは損失なしにその元の形に再び拡張
またはデコノプレスすることができなければならない。 復元されたデータと元のデータとは同一であって互いに
区別できないものでなければならない。− 適応性のあるようにされているか、筐たは適応性のある
ようにされる可能性のある汎用データ圧縮手順が従来技
術において知られており、二つの該当する手順は、ハフ
マン()(uffman)法及びタンスタル(Tuns
tall)法である。ハフマン法は広く知られて用いら
れておシ、それに関してはハフマンの「最小冗長性コー
ドの構成のための方法」という論文〔グロシーディング
スエRE、第140巻、第10号、10911i−11
00頁(1952年9月)〕に出ている。さらにハフマ
ンの方法については、R,ガラハ(Gallagher
)の「ハフマンによる論文についての変形」という論文
C工EEE情報理論トランザクションズ、IT−24,
N[L6(1978年11月)〕に見ることができる。 適応ハフマン・コーディングは、固定長の記号列を可変
長さ2進語に写像する。適応ハフマン・コーディングは
、その方法が解釈できる固定列置より長い入力記号列内
に冗長があるとき、それが有効でないという限界のある
という欠点がある。ハフマン法を実際に装置として具体
化するときには、入力動員は、RAMの価格のために1
2ピツトを超えることは殆んどないので、この方法は、
一般には良好な圧縮比を達成しない。なお、適応ハフマ
ン法は複雑で、各入力記号に対して法外に多数の記憶サ
イクル全必要とすることが多い。従って適応ノ・フラン
法は、望まし≦ないほどわずられしく、高価でかつ遅い
傾向があるために、この方法を実際的な現在の設備のほ
とんどに適さなくしている。 タンスタルの方法については、B、T、タンスタルの「
雑音のない圧縮コードの合成」という題名の博士論文、
〔ジョーシア・インステイチュート・オプ・テクノロジ
(1,967年9月)〕に見ることができる。タンスタ
ルの方法は、可変長の人力記号列を固定長の2進出力語
に写像する。タンスタル法の適応形は、従来技術に記載
されていないが、一つの適応形を誘導できる可能性はめ
るものの、それは、複雑で高性能の装置にするには不適
切であろう。ノ・フラン法もタンスタル法も原始記号の
組合せの長さが段々長くなると符号化することができな
くなるO 従来技術の欠点の多くを克服するさらに別の適応データ
圧縮及び復元装置は、M、コーイン(Cohen)、W
、イーストマン(Eastman) % A 。 レンペル(lempel)及びJ、ジブ(Ziv)の係
属米国特許願第291.870号「データの圧縮と圧縮
されたデータの復元の装置と方法J (1981年8月
10日出願)に開示されたものである。前記米国特許願
第291.870号の方法は入力データの記号のス) 
IJ−ムを記号の適応増大する列に分解する。前記特許
願第291.870号の方法は、入力文字ごとに多数の
RAMサイクルを必要として、圧縮及び復元を行うため
に乗算及び除算のような時間のかかる複雑な数学的手順
を用いるという欠点をもっている。これらの欠点は、前
記特許願291.870号の方法を多くの経済的で高性
能の装置として実現するのに不適当にする傾向がある。 前述のことから従来技術も前記米国特許願第291、8
70号の方法も高性能の適用業務に適当な適応性があり
、効率的な圧縮及び復元装置を提供しないことがわかる
。既知の従来の設計アプローチは、そのような装置には
直接には適当でない。 []I〕 発明の構成 (1)問題点を解決する手段 本発明は上述の装置の欠点全良好な圧縮比を達成する経
済的で高性能で適応性があり、可逆的なデータ圧縮及び
復元の装置と方法を提供することによって克服する。本
発明は、入力データ・ストリームからパース(構文解析
して分解すること)されたデータ文字信号のストリング
を格納し、そのストリームとの最長一致を決めるために
、そのストリームを格納されたストリングと比較してデ
ータ文字信号のストリームを探索することによって、デ
ータ文字信号のストリームを符号信号の圧縮されたスト
リームに圧縮する。この圧縮装置はまた、最長一致に続
く次の一つのデータ文字信号によって拡張されたデータ
文字信号のストリームから最長一致を比較するス) I
Jングを格納する。 最長一致を拡張して格納するとき、格納されて拡張され
たストリングに対応する符号信号がそれに割当てられる
。符号1言号の圧縮されたストリームは、格納された最
長一致に対応する符号信号から与えられる。データ文字
の格納烙れたストリングが接頭部ストリングと拡張文字
で構成されているOストリングがその接頭部ストリング
に対応する符号信号によって格納される。 符号信号の圧縮でれたストリームは、接頭符号信号及び
拡張文字信号を含む文字ストリングを構成して格納する
ことによって復元される。復元装置は、受けられた符号
信号と次に続くストリングの最初の文字として受けられ
る拡張文字とに従ってストリングを格納する。データ文
字信号のストリングは、各探索繰返しに対する限られた
数のハツシュアドレスを与える限定探索ハツシング技術
によって記憶装置に入れられる。 (2)実施例 本発明はデジタルデータ文字信号のストリームまたは列
を圧縮して、圧縮されたディジタル符号信号の対応する
ストリームを与えるデータ圧縮器を備えている。本発明
にはさらに圧縮された符号信号を受けて元のディジタル
データに復元する復元装置がある。例えば、圧縮される
予定のデータは、英語の原文資料、格納されたコンピュ
ータ記憶などを含んでいてもよい。今日のデータ処理装
置及び通信装置においては、圧縮を行われるはずのアル
ファベットの文字は、処理されてASCIIフォーマッ
トのような都合のよいコードで2進数字のバイトとして
伝達されることがわかっている。 例えば、入力文字をgピット・バイトの形式で256文
字の文字体系全体を受けることができる。 圧縮器からの圧縮符号信号は、例えば、記録保管の目的
のために電子記憶ファイルに格納されるか、または復号
を行う遠隔の場所に伝送されてもよい。 このほかに、ディスク記憶装置のような電子記憶ファイ
ルが入力電子回路に圧縮器を備え、出力電子回路に復元
器を備えることができ、それによってファイルに入るす
べてのデータを記憶するために圧縮して、ファイルから
検索されたすべてのデータを利用機器に伝送する前に復
元する。前述の従来の圧縮及び復元装置は、圧縮及び復
元のそのような用途に適合させる性能または適応性を与
えない。本発明に従って実施された高性能適応装置をそ
のように用いることができる。 多数の設計オプションが被圧縮データ及び装置の所望の
特性に従う種々の組合せで本発明の実施例に用いること
ができる。発明の三つの実施例を以下に説明する。一つ
の実施例は、最高性能を与えるオプションを組合せてお
ム第2の実施例は、最高圧縮を与えるオプションを組合
せ、第5の実施例は、最高性能実施例のプログラム・コ
ンピュータ形を提供する。 本発明の圧縮器は、データ文字の入力ストリームをスト
リングまたはセグメントにパースして、各ストリングを
識別する符号信号全伝送する。圧縮器が最初に遭遇した
データ文字以外は、各パースされたストリングは、前に
認識されたストリングに対する最長マツチを含む。圧縮
器は、認識されたストリングに対応する符号信号を伝送
する。 1ストリングの文字が入力ストリームからパースされる
と、パースされたストリングは、入力ストリームに訃い
て次に発生する文字によって拡張され、あとで符号化に
利用されるために圧縮器において符号化され、そこに記
憶される拡張されたストリングを形成する。従って認識
されている文字シーケンスは、1ブロツクのデータを圧
縮する過程で統計情報を集めながら、平均長さがたえず
大きくなっている。拡張文字は、次のパージング繰返し
における最初の文字として用いられる。パージングは、
データを通るただ1回のパスで達成され、初めの文字か
らl1lRして1回に1文字をパースする。従って、単
一文字のストリング以外は、各ストリングは、接頭スト
リングとして記憶され、そのストリングは、前に記憶さ
れたストリング及び拡張文字に一致する。そのような各
ストリングを拡張文字の実際のまたは暗黙の表現で接頭
部の符号信号表現に代えて記憶するのが都合よい。パー
ジングは、データ・ストリームの各文字間に仮想コンマ
を挿入し、それによってパースされたストリングまたは
セグメントを区切るものとして概念化できる。従って、
本発明に訃いては、マツチを得るための未処理のデータ
ストリームの探索は、先に観察されたストリングとの最
長マツチを見出すために一つのコンマから一つの文字へ
次に続くコンマを越えて探索することを含む。 第1図を参照すると、データ文字のストリームの一部分
の略図が示されておLそこではXがアルファベットの任
意の文字を表している。コンマは、パージングを表すた
めにのみデータストリーム中に示されている。このデー
タストリームのストリングlが仮想コンマ2及びうによ
ってパースされている。ストリング1は、前のストリン
グj′にマツチし、ストリング1′は、コンマ2に続く
入力データストリームにマツチするコンマ2に先行する
最も長く伸びたストリングである。ストリング1′は、
前に符号化されたものであるから、その同号は、ストリ
ング1に遭遇するとき圧縮器によって伝送される。次い
で圧縮器は、接頭部ストリング1と拡張文字5全含む拡
張ス) IJング4を符号化して記憶する。拡張文字は
、それがどんな文字であっても無関係に、接頭部1に続
くデータストリーム中の次の文字である。すなわち、拡
張文字5は、前にデータストリームの中で現れた文字で
あってもよいし、またはそれは初めて遭遇するアルファ
ベットの1文字であってもよい。 圧縮器は、もう一度最長マッチが達成されるまで拡張文
字うで始まる次の、No−シンクの繰返しを仮想コンマ
5のところで開始する。従って、前に拡張されたストリ
ング6にマツチするストリング6がパースされる。前の
繰返しにおけると同じようにまた5ストリング6′に対
する符号信号は、伝送され、後続の文字と拡張されたス
トリングによって拡張されたストリング6は、符号化さ
才tて言己憶される。続くパージング繰返しにおいては
、符号化されて記憶されたストリングキにマツチするス
トリング7がパースされる。このノ々−ソング繰返しで
伝送された符号1百号は、拡張ストリングキに割当てら
れたものである。 上述のように、圧縮器によって与えられた符号信号は、
引続く復元のために記憶または伝送することができる。 復号器は、符号化接頭部スト1ノングと拡張文字の形で
データ會記憶する。従って、復元器は、一つの受信符号
信号と一つの拡張文字を含むエン) IJ−を記憶装置
内に構成する。fllえば、続けて第1図を参照すると
、復元著冷力よスト1)ング1に関連した符号信号を受
けると、その復元器が前にストリング1′を構成して記
憶しているので、そのストリングを構成する文字が、以
下に詳細に説明する方法で、最構成される。次に続く繰
返しにおいて、復元器がストリング6に関連した符号信
号を受けると、そのストリングを構成する文字が検索さ
れる。この時点で、復元器は、ストリング1からの符号
信号を受け取って拡張文字5を検索したので、以下に詳
細に説明する方法でストリングキを構成して記憶できる
。 本発明において、人力バイトの各シーケンスが実施例次
第で固定長筐たは可変長のものであってもよい符号信号
に圧縮される。上述のように、各入力バイト列は、各符
号識別子を割当てられ、一つの列が入力データ・ストリ
ームの中で再び出てくるときはいつも、同じ識別子が再
び伝送される。 各1バイト列は、符号を割当てられ、一つの列が再び出
てくるときはいつも、1バイトと拡張されたシーケンス
に割当てられた新しい符号とによって拡張される。概念
的には、圧縮器は、各データブロックを格納されたセッ
ト内のゼロストリングのみから開始する。圧縮器は、新
しい文字が出てくる度にそのセットに1文字のストリン
グを入れ、次にこれらの記憶された1文字ストリングを
さらに長いストリングを形成するのに用いる。各ストリ
ングがそのセットに加えられると、それは、一つの符号
信号を割当てられる。入力からの一つの文字ストリング
がセット内で見出される度に、次の入力文字がそのス)
 I)ングに追加され、拡張されたストリングがそのセ
ットの中にあるかどうかを決めるためにそのセットが探
索される。拡張されたストリングが既に存在しなければ
、そのストリングが入れられる。そのストリングセット
をすべての単一文字ストリング金倉むように任意に初期
設定できる。これは、より高い性能の装置として実現で
きるようにすることもあるが、tりる程度の圧縮効率を
失うことがらる。圧縮器からの出力符号信号は、同一文
字列の以前に起ったことを示す引用文として考えること
ができる。 前記米国特許願第291.890号のデータ圧縮及び復
元装置において、拡張文字が各認識された列に追加され
て拡張された列が符号化される。拡張列の符号化表現は
、それの圧縮符号として圧縮器によって伝送された。そ
の代りに、本発明の圧縮器は、拡張列を記憶して、認識
された列に対する符号を伝送する。認識された列は、拡
張列の接頭部である。記憶された拡張列は、次にあとで
符号化するために用いられる。前記米国特許願第291
&f70号の方法をこのように変更すると、前記米国特
許願第291870号において用いた時間のかかる、や
っかいな数学的操作及び乗算・除算装置のような付随の
ハードウェアをなくすことによってデータ圧縮及び復元
装置を著しく簡単にすることができる。この変更は、装
置の性能を著しく高めると同様にまた、普通に遭遇する
データの場合の圧縮効率の増加させる。これは、前記米
国特許願第291.870号の装置では、圧縮された符
号信号の一部分として伝送される拡張文字が等しく起こ
りそうな文字体系のすべての記号に見合った多数のビッ
ト=含むからである。本発明では、拡張文字は、以下の
圧縮されたストリング符号の一部分として伝送されるの
で、文字の各ストリングについて行われた圧縮によって
必要とするビットの数が少なくなる。 本発明は、限定探索長の計算されたアドレス・ハツシン
グ装置を用いて各ストリングをストリング・テーブルに
入れ、そのストリング・テーブル内で各ストリングを探
索する。ハツシング関数は、前の符号信号と拡張文字と
から成るハツシュ・キーヲ用いてN個のハツシュ・テー
ブル・アドレスの組を与える(ここでNは普通1ないし
4である)。 N個のRAM記憶場所は、逐次に探索され、その項目が
N個の記憶場所になければ、それはそのテーブル内にな
いと考えられる。圧縮のときに、テーブルに挿入される
べき新しいキーをN個の割当て場所に受入れできなけれ
ば、それはテーブルから除外される。この限定探索ノ・
ツシング法は、圧縮効率をわずかに下げるが、装置とし
て実現するの全非常に簡単にする。N個のハツシュ・ア
ドレスが反復したRAMの中で並列に探索される別の実
施例を用いてもよい。 本発明は、固定長または可変長の圧縮された符号信号を
用いて装置として具体化することができる。固定長符号
信号の実施例は、圧縮効率においてわずかの損失を伴い
ながら装置として実現する場合の簡単化をもたらす。固
定長符号実施例は、RAMのスペース必要度と可変符号
長による装置としての実現に必要な符号シフティング機
構の複雑さを小さくする傾向がるる。しかし固定長符号
による装置の実現は非常に高い性能の装置の実現を行う
ときに望ましい。 一般には、本発明は、入力文字信号の可変ストリングを
出力符号記号信号に写像することによって圧縮を行う。 圧縮器は、ストリング・テーブル(RAM)の中にそれ
が認識するストリングのリストを記憶し、各ストリング
に対しては対応する出力符号信号を記憶する。そのよう
に記憶されたストリングの組は、入力文字のどの列をも
記憶された?トリングにパースできるように構成される
ので、出力符号に写像できる。パージングは、ストリン
グ・テーブルの中の最長ストリングにマツチするすべて
の連続する入力文字を消費し、対応する出力符号を伝送
することによってどの繰返しにおいても達成される。最
長マツチは、次の入力文字によって拡張され、ストリン
グ・テーブルに記憶され、そして対応する符号を割当て
られる。 従って、ストリング・テーブル内のストリングの組の合
成は、現在のデータブロックの続開に適応し、かつその
統計の文である。明確にいえば、そのストリングの組に
追加された各ストリングは、その組に既にある一つのス
トリングの1文字の拡張である。一つのストリングがそ
の七ッ1に加えられるのは、それが実際に入力データに
おいて観測されたのちにだけ行われる。従って、一つの
長いストl/フグがそのセット内に発生できるのは、そ
れが何度も出てきたので頻繁に再び発生すると期待でき
る場合だけである。このストリングセットは、できれば
ランダムアクセス記憶装置(RAM )にテーブルとし
て記憶されるのがよい。各ストリングは、連結トリー構
造と考えてもよいものに記憶される。各ストリングは、
少なくとも暗黙的には、その符号記号、そのスh ’J
ングの最後の文字及び最後の文字以外のすべてのストリ
ング文字を含むストリング接頭部の符号記号と一緒に記
憶される。各文字が個別に得られ、かつ各接頭部符号が
逐次に呼び出されるので、復元装置は、一つのストリン
グを復号するときに多重RA Mアクセスを用いる。 各データ信号は、入力文字列に対する最長マツチを探す
のを容易にするようなやり方でストリング・テーブル内
に記憶される。各入力文字が読まれると、それが既に認
識された一つのストリング(新しい列の始めにゼロスト
リングで始まったもの)に付は加えられて、その新しい
ストリングは、それがそのテーブルの中にあるがどうか
を決めるために検査される。新しいス) IJングがそ
のテーブルの中にあれば、その符号が検索されて、その
処理が新しい文字と新しい符号とで繰返される。 それらのストリングをそのように呼び出すために、それ
らのストリングは5“接頭部符号、拡張文字“の組(タ
プル)によって識別でれるのが都合よい。 限定探索ハツシング装置が探索をス) IJング・テー
ブルを通して行うのに用いられる。 本発明を装置として具体化するのに用いることのできる
ハツシング装置は、一つの符号、文字組合わせに対して
記憶アドレスの列を発生する関数ハツシュ(符号、文字
)→アドレス1゜アドレス2・・・・・・・・・・・・
・・ヲ含ム。テーブルに一つのストリングを挿入すると
、発生したRAMアドレスが空サイトを発見するまで逐
次に呼出され、項目がその点に挿入される。一つの項目
を検索すると、同じアドレス列がその項目が発見される
かまたは空サイトが発見される1で呼出され、その場合
にその項目はテーブルの中に存在しなめと定義される。 各占有サイトにおいては、そのストリングのための識別
用符号、文字の組は、その最初のサイトを占有するもの
が所望の項目であるかどうかを決めるために比較されて
もよい。あとで説明する理由によって、識別用符号を比
較することは、実際には、この実施例で必要な尼けであ
る。 誘導されて用いられたアドレスの数は、小さな一定値N
(Nは普通1ないしヰである)に限定される。一つの項
目をN回の呼出しでス) IJング・テーブルに挿入で
きなければ、その項目は用いられない。テーブルから検
索される予定の一つの項目がN回の呼出しの中に存在し
なければ、それはテーブル内にないと定義はれる。この
限定探索の特徴は、圧縮効率の小さな損失をもたらすが
、性能を著しく増加させる。本発明はBビット・バイト
の文字体系について圧縮を行うとして説明する。 本発明を装置として具体化するのに用いられるハツシュ
関数は、任意の一つの符号、2B拡張文字すべてに対す
るN個のアドレスすべてに関連したアドレスの組がどの
アドレスをも2回は含まない。 従って、一つのアドレスが特定の符号、文字の組に対し
て呼出されると、その符号の比較はその記は場所の占有
物の識別を行うのに十分である。その文字の値をRAM
に記憶する必要はない、っ従って、RAMのスペースは
、ハツシュ関数のこの特徴のために保存される。なお、
ハツシュ関数は、符号−!たけ文字の連続する値を異常
なほど激しく使ってもどの特定なアドレスの胆ヲも使込
過ぎることにはならないように設計されろ。これは可能
な場合、同じ最初のアドレス値をもつ任意の二つの符号
、文字の組が同じ第2のアドレス値をもたないことを確
実にすることによって達成される。 ハツシュ関数によって作られた幾つかのアドレスをRA
Mの重複復製が同時に探索されて装置の性能をさらに高
めることができるように並列に与えられることができる
と分るであろう。上記の基準全満足する多くのハツシュ
関数が本発明全装置として具体化するのを満足に果たす
ことになるので、特定の適当なハツシュ関数を以下に説
明する。上記の基準を満足する他のハツシュ関数を形通
りのやり方で誘導できることがわかる。 以下に説明する本発明の実施例において、圧縮器からの
出力符号信号は、Cビットの公称語長(2°はストリン
グ・テーブルの大きさ以下である)全もつことになる。 しかし、ストリング・テーブルが最初に構成されようと
しているとき、各ストリングを1回の繰返しの間に利用
できるものから選択するためには、Cより少ないビット
を必要とする。最高の圧縮は、漸進的に大きくなる出力
符号をCビットの限界まで伝送する場合に達成される。 このアプローチは、可変符号を固定バイト配向に整列さ
せるのに追加の出力バードウェアを用いる。出力語長は
また新しい入力文字の認識に従って変ることがらる。以
下に説明する実施例の一つにおいて、一つの入力文字が
1ず出てくると常に、その文字そのもののビットパター
ンがあとに続くゼロ・ストリング符号が与えられる。従
って、これらの出力は正規のストリング符号よりいくら
か長い0あとで説明するようにして、出力長のこの変動
は、入力データを処理する前にすべての単一文字ストリ
ングを含むようにストリング・テーブルを初期設定する
ことによって避けられる。 このアプローチは、それがそうでない場合に必要な任意
のビット・シフト・ハードウェアをなくすが、洋縮を小
さくすることがある点で装置とじての具体化の複雑性を
簡単にする。圧縮の低減は、未使用の単一文字に割当て
られた符号が有益に用いられ得ないで、すべての割当て
られた符号を区別するのに必要なビットの数を拡張する
ので起こる。この圧縮の低減は、可変長符号を利用する
初期ストリングの圧縮の間に起るだけである。 以下に説明する発明の諸実施例において、復元プロセス
は、圧縮プロセスと論理的に同じであるが、いくらか異
って記憶きれるストリング・テーブルで実現される。各
符号信号を復元器によって受けるとき、それが接頭部ス
トリング符号と拡張文字とに翻訳されるストリング・テ
ーブル内で直接に探される。次に接頭部符号が探されて
翻訳され、その処理が空ストリングに出合うまで繰返さ
れる。しかしこの処理は、その文字ストリングを圧縮器
によって受けた順次配列と逆の配列になっているデータ
文字を発生する。ス) IJング内内字字列逆にする二
つの技術を以下に説明する。LIFOスタック(後入れ
先出し)が各文字を一時保持するのに用いられ、各文字
が復元器によって発生されると、それはスタックの上に
押し上げられる。 反復の終りには、各文字が正しい順序でスタックから読
み出される。別のやり方として、一つのストリング長さ
カウントがヌトリングテーブル内の各符号に対して維持
されて一つの文字を読み出すとき、それをランダム・ア
クセス出力バッファ内の適当な位置に直接置くことがで
きるようにしている。 第2図及び第う図は本発明の最高性能の実施例全実現す
る圧縮器及び復元器をそれぞれ示している。この実施例
は、経済的で高速な圧縮処理を与える。Bビットの文字
の大きさ及びCビットの圧縮符号の大きさが用いられる
。ス) IJJングテーブルは、2°の記憶場所を含む
。普通には、Bは58ピツトでろJ、Cは、12ピツト
で、他の文字及び符号の大きさをこの発明を実施するの
に利用できるようにしている。この実施例は、ハツシュ
されたストリング・テーブル内のストリング記述項のア
ドレスとして用いられるCビットの固定長符号記号信号
を用いる。最初の2B記憶場所は、各単一文字ストリン
グを含むように初期設定される。この圧縮器は、各記述
項にCビットの接頭ストリング符号だけを含むストリン
グ・テーブルを用いる。復元テーブルは、この同じ符号
とそのほかに現在のストリングを合成するのに接頭スト
リングに追加されるBピットの拡張文字を含む。 圧縮器からの出力符号記号信号として用いられるストリ
ング・テーブルに入ったアドレスは、第2図及び第9図
の実施例の説明の次に詳細に説明するハツシュ関数を用
いて得られる。ハツシュ関数は、N個のCビット・アド
レスを順次に発生する。第2図及び第9図の実施例は、
第4図及び第5図の実施例と共に以下に説明する多数の
機能を制御する制御装置を用いる。例えば、ノ・ツシュ
関数装置は、N番目のアドレスが発生したときに制御装
置に知らせる。本発明のノ・−ドウエア実施例は、順次
状態機械として実現され説明される。圧縮器及び復元器
の制御装置は、それらの種々のブロックから信号を受け
て、機械の現存の状態に従って圧縮器及び復元器の構成
要素を制御する几めにそれらへ信号を与える。説明した
各シーケンスを制御するのにどんな標阜制御論理装置を
も利用できる。例えば、1状態ごとに1フリツプ・フロ
ップ全活動化して5各状態の間実行されるべき有効な接
続及び機能全区別し、そしてその状態を制御するフリッ
プフロップをその状態の間活動化してもよい。 次に第2図を参照すると本発明の最高性能の実施例の圧
縮器が示されている。この圧縮器は、バス10に入力文
字信号を受けてバス11に圧縮出力符号信号を与える。 入力文字は外部装置からバス10に与えられる。外部装
置は、また入力文字信号がその外部装置から利用でき、
バス1oに加えられるときにつねに、データ利用可能信
号全ライン12に与える。ライン12上のデータ利用可
能信号は、圧縮器制御装置15に加えられる。圧縮器制
御装置15は、第2図のB−縮器のブロックのすべてに
リードlljを経て制御信号を与える。 圧縮器制御装置15は、第2図の圧縮器を制御状態を介
して以下に詳細に説明するような方法で順序付けする。 制御装置1うはまた、追加の入力文字を要求するために
ライン15を通して外部装置に文字ス)o−プ信号を与
える。出力符号信号がバス11の上で利用できるとき、
制御装置15は、符号ストローブ信号をリード16′(
il−通して外部装置に与える。 バス10の上の入力文字は、Bビット文字レジスタ17
に入れられる。単一文字ストリング符号を作るために、
文字レジスタ17からのBビット文字バイトは、バス1
8全肚てCビット符号番号レジスタ19のB個の最下位
ビットに挿入される。 符号番号レジスタ1つの高位のC−Bビットt リード
20の上の制御信号を用いてゼロにセットできる。 レジスタ1つからの符号記号信号及びレジスタ17から
の文字信号は、それぞれバス21及び22を経てハツシ
ュ関数回路25に加えられる。ハツシュ関数回路2うは
、バス21の上のCビット符号信号全バス22の上のB
ビット文字と結合してバス21Iの上にN個のCビット
・アドレスを逐次に与える。ハツシュ関数回路23は、
バス2ヰを通して与えられたハツシュアドレスがそのシ
ーケンスのN番目のアドレスであるがどうかをリード2
5を経て制御装置15に知らせる。 ハツシュ関数回路23はまた、制御装置15から「新ハ
ツシュ」指令及び「次のハツシュ」相合を受ける。制御
装置13は、ハツシュ関数回路23に指令して「新ハツ
シュ」指令に応答するN個のハツシュ・アドレスの最初
のもの及び「次のハツシュ」指令が相次いで発生するの
に応答して相次ぐハツシュ・アドレスを与える。既に説
明したように、ハツシュ関数23がN番目のハツシュ・
アドレスを与えたとき、一つの信号がリード25を介し
て制御装置15に戻される。 バス211の上のハツシュ・アドレスは、2 に等しい
一定値信号をも受ける比較器26に加えられる。比較器
26は、バス211の上のハツシュ・アドレスを値2B
と比較して、バス211の上のハツシュ・アドレスが2
Bより大きいがまたは2B以下であるかどうかを指示す
る信号全リード27を介して制御装置1うに与える。 バス211の上のハツシュ・アドレスはまた、Cピッl
−RA Mアドレス・レジスタ2gにも加えられる。R
A Mアドレス・レジスタ28にロードされたアドレス
は、アドレスが圧縮器ストリング・テーブルを記憶する
のに用いられるRAM29を呼出す。RAM29は、2
°のCビット記憶場所を含んでいる。各ストリングは、
そのストリングに割当てられた符号によってアドレス指
定された記憶場所にあるその接頭符号を記憶することに
よってRAM29の中に記憶される。そのストリングに
割当てられた符号は、後述のようにして、ストリング拡
張文字で接頭符号をハツシュすることにより得られる。 RAM 29は、「読出し」指令及び「書込み」指令を
制御装置15から受けてRAM29の「読出し」、「書
込み」機能全制御する。RAM29は、2 に等しいC
ビットの値捷たはCピッl−9]号番号信号をレジスタ
1つからバス5つを介して受取るように制御装置15に
よって制御される。 「書込み」指令をRAM 29に加えるのに従って、一
定値2Bまたはバスう0の上の符号番号のいずれかが制
御装置1うからの制御信号に従ってレジスタ2gの中の
RAMアドレスによって呼出された記憶場所に書込捷れ
る。RA M 29はまた、「読出し」指令に応答して
呼出された記憶場所のCビット内容をバス51に与える
。バス51の上のRAM出力及び符号レジスタ1つの出
力は、比較器う2へ入力として加えられる。比較器う2
はまた、2Bに等しい一定値信号を受ける。比較器う2
は、RAM29の出力全符号番号レジスタ19の出力及
び2Bと比較する。比較の結果は、リード5つを経て制
御装置13に与えられる。リード33の上の比較信号は
、バスラ1の上のRAM出力がレジスタ19からの符号
番号に等しいか、捷たは2Bに等しいか、またはどちら
でもないかを制御装置1うに指示する。あとで説明する
理由のために、制御装置1うけ、1’(AMアドレスレ
ジスタ28を制御して、その内容をバスラ)↓を経て符
号番号レジスタ19に転送する。 第2図の圧縮器は、Cビット信号をバスラ6を経てRA
Mアドレス・レジスタ2gに与える初期設定計数器う5
を備えている。計算器35はそれに加わるゼロの値をも
つ信号を介してゼロにセットできる。制御装置13は、
計数器′55を割数指令を介して制御して、割数指令を
加えるごとに計数器の内容に1を加える。計数器3うは
、それが計数2 に達したときを制御装置15にリード
5Yの上のキャリアラ)tたはオーバフロー信号を経て
知らせる。初期設定計数器55はRAM29を初期設定
するのに用いられ、RAM29の記憶場所のすべてを逐
次に呼出して空状態を指示するように選択された一定値
2 を書込むことによって空にする。 第2図の圧縮器の基本動作を要約すると次の通りである
。 1 各データブロックごとに、RAMを空に初期設定す
る。 2 各バイト・ストリングの最初の文字について 最初の符号番号として、文字〉符号番号レジスタに入に
る。 う、 相次ぐ文字について と ハツシュ(符号、文字)斗N個のRAMアトl; レスの列各記憶場所ごとに順次に入れる。 八 RAM出力=符号であれば、RA Mアドレス〉符号番
号レジスタ; もう一つの文字をもったこのステップに再び入る。 号値を出力として伝送する。次にステップ2へ行く。 そうでないときは、すべてのハツシュ・アドレスの後、
符号値を出力として伝送し、ステップ2へ行く。 第2図を続けて参照すると、以下のものが第2図の圧縮
器の状態機械語記述である。 状態O: 待ち状態、各データブロックの始めに初期設
定計数器をゼロにセット。 データ使用可能信号を待つ、次いで 状態1へ行く。 状態1:RAMを初期設定する 初期設定計数器遅RA Mアドレス・ レジスタ 2B≧RAMデータ入力 RAMを書込む +1を初期設定計数器に加える 初期設定計数器〈2°なら、状態1 を繰返す、そうでなければ状態2へ 行く。 状態2. 符号を開始するブロックの最初の文字状態う
へ行く。 状態う: このストリングの中の次の文字を処理する 次の文字を読出す、 0へ行く。 ハツシュ(符号番号レジスタ、次の文 字)i;qRA y。 RAMアドレスく2 なら、状態4へ 行く RAMを読出す。 (RAM出力)−(符号番号レジスタ)なら、 RAMアドレス≧符号番号レジスタ; 状態5へ行く。 (RAM記憶場所)=2Bなら、状態 5へ行く。 その他の場合、状態4へ行く。 状態4: 探索を継続する 次のハツシュ(符号、文字);qRAMアドレス RAMアドレスく2 で、最終ハッシ ユ値であれば、状態6へ行く。 その他の場合、状態ヰを繰返す。 RAMを読出す (RAM出力)−(符号番号レジスタ)RAMアドレス
≧符号番号レジスタ;でb料替、状態うへ行く。 (RAM出力)−2Bなら、状態5へ 行く。 その他の場合、最終ハツシュ繰返しで あれば、 状態6へ行き、そうでなければ状態 4を繰返す。 (符号番号レジスタ)錘RAMを書 込む 状態6へ行く。 状態6: ストリングの終り と (符号番号レジスタ)趣出カベ 文字レジスタ発符号番号レジスターく ゼロe番手符号番号レジスタ(≧位 C−B個のビット)を伝送 状態5へ行く。 上に与えられた状態機械語記述に関する第2図の圧縮器
の動作のさらに詳細な説明を次に行う;
〔0〕、待ち状
態、 1ブロツクの入力文字を待っている間、第2図の
圧縮器は、この状態にある。 待ち状態の間、制御装置1うは、初期設定計数器35を
ゼロにリセットする。入力データを供給する外部信号源
からリード12を通ってくるデータ使用可能信号は、入
力データが利用できるときを指示するために用いられる
。データが使用可能になったとき、リード12の上のデ
ータ使用可能信号は、制御装置1うに初期設定状態に入
るように合図する。 〔1〕、初期設定状態、 ランダム・アクセス記憶装置
(RAll)2つの内容は、空であるように初期設定さ
れる。空記号は、実現の便宜上2Bとして任意に選ばれ
ろ。従って、「初期設定状態」では、値2 が記憶装置
2つの各記憶場所に書込捷れる。空記号は、ストリング
符号には決して割当てられてはならない。記憶場所ゼロ
ないし2Bは、それらは決して呼出されないであろうけ
れども、実現の便宜上空に初期設定される。概念的には
、記憶場所ゼロないし2B−1は 2B個の単一文字ス
トリングを含むように初期設定され、それらのストリン
グは、それらが表す文字に等しい符号値をあらかじめ割
当てられている。従って、2B個の単一文字ストリング
は、符号ゼロないし2B−1をあらかじめ割当てられて
いる。この初期設定は、Cビットの初期設定計数器55
内の値をバスラ6を経てRA、 Mアドレス・レジスタ
28にゲートすることによってメモリサイクルを繰返し
て達成される。RAM29への入力は、Cビットの一定
入力値2Bから選択される。初期設定計数器55は、現
在の内容に1を加えることによって計数を上げるように
指令される。この一連の事象は、各記憶場所に対して1
回ずつ合計2°回繰返される。2°のそのような計数の
のちに初期設定計数器う5は、2°の計数が起ったこと
を知らせるオーバフローまたはキャリアウド信号を制御
装置15にリードう7を経て与える。これによって第2
図の圧縮装置は「最初の文字の状態」に進む。 〔2〕、最初の文字の状態、 初期設定ののち、第2図
の圧縮器はパス1oの上にある第1人力文字を読取って
、それのB個のビットをBビット文字レジスタ17にゲ
ートする。次に制御装置15によって信号を文字ストロ
ーブ・ライン15に与えて、次の入力文字信号を外部装
置によって入力バス10の上に与えさせる。次に文字レ
ジスタ17の中のB個の文字ビットをバス1gを経てC
ビット符号番号レジスタ19の最下位(右側)Bビット
にゲートして、レジスタ19の最上位C−Bビットをゼ
ロにセットする。この手順は、最初の入力文字をその単
一文字ストリングに対してあらかじめ割当てられた符号
値に変換する。第2図の実施例にかいて、2B 図のあ
らがじめ割当てられた符号値は、それらが表す文字体系
の文字にそれぞれ等しい。最初のストリングを開始して
しまうと、第2図の圧縮器の繰返しの主サイクルである
1次の文字状態」に入る。 〔5〕0次の文字状態、 この状態に入ると、一つの正
しい文字ストリングが入力からパースされてしまってお
り、その符号値が符号番号レジスタ1つに入っている。 次の文字は、こんどは、バス10から文字レジスタ17
に、読出され、ライン15の上の文字ストローブ信号は
、外部データ源に戻される。ライン12の上のデータ使
用可能信号が、そのような文字がバス10の上で使用で
きなかったことを示す場合には、圧縮器はデータブロッ
クの終りに達していたことになる。その状況では、符号
番号レジスタ1つにある最終データ・ストリングに対す
る符号値は、出力符号としてバス11を通して伝送され
て、新しい圧縮された右号信号が与えられていることを
指示するライン16の上の符号ス)o−ブ信号が外部装
置に送られる。 次に制御装置13は、圧縮器を「待ち状態」に戻すO しかし、そのデータブロックの終シに達しな5で、新し
い文字が利用できて、文字レジスタ17に入れられたと
すれば、このBビットの文字は、ハ、< 22 ヲ経て
ハツシュ関数回路?3の中へバス21を通して与えられ
たレジスタ19の中のCビットの符号番号と結合される
。制御袋ff13がらの「新ハツシュ」指令の制御を受
けて、ハツシュ関数回路25は、この符号と文字の組合
せに対する第1のRAMアドレスを与える。バス24の
上のこのハツシュ・アドレスは、比較器26によって値
2 と比較される。パフ21Iの上のハツシュ・アドレ
スが2 以下であれば、この記憶場所は、呼出し不能で
、次のハツシュ・アドレスがF次のハツシュ状態」へゆ
くことによって選択される。 2B以下のアドレス値は 2Bより小さな値が単一文字
のストリングに対する符号値でるるようにあらかじめ割
当てられており、かつ値2Bは、空記憶場所(未使用の
符号値)を識別するためにあらかじめ割当てられたので
、新しい符号値として認められない。 ・・ツシュ・アドレスが2Bより大きければ(通常の場
合)、バス24の上のハツシュ・アドレスがRAMアド
レス・レジスタ2gにゲートされ、RAM29がそのア
ドレスの内容を読取るように制御される。バス31の上
のCビットの結果は、比較器32に訃いてレジスタ19
からの符号値と値2Bとの両方に比較される。バスラ1
の上のRAM29の出力がレジスタ1つからの符号番号
に等しければ、拡張ストリングは、前に出てきて既に一
つの符号値を割当てられており、すなわち丁度読出され
た記憶場所のRA Mアドレス値である。新符号番号は
RA Mアドレス・レジスタ28からバス51+を経て
符号番号レジスタ19にゲートされ、新しい文字につい
ての手順を繰返すためにこのF次の文字状態」に再び入
る。 代りの方法としてバス′51の上のRAM出力が2Bに
等しければ、この記憶場所は、空であり、拡張ストリン
グがテーブルにないので、入力データをパースするのに
利用できないことを意味する。 これは、現在のス) IJングの構成作業を終りにして
こんどは「新ヌトリング状態」に入る。 しかし、バスラ1の上のRA 1A出力が2Bにもまた
レジスタ1つからの符号番号にも等しくない場合、RA
M29の中の他の記憶場所を探索しなければならず、そ
れは「次のハツシュ状態」において実行される。 は、さらに別のRAMアドレスがハツシュ関数回1i!
823によって現在の符号、文字組合せに対して制御装
置1〉からの「次のハツシュ」指令の制御を受けて発生
される。次に前の状態の各手順がその本質において繰返
される。新アドレスは比較26によって2Bに比較され
、そのアドレスが2Bより犬きくなければ、それは用い
られない。この場合に、もう一つのアドレスを得るため
に、この「次のハツシュ状態」に再び入る。N個のハツ
シュ・アドレスすべてを、ハツシュ関数回路25からの
リード25の上の信号によって示されているように、検
査し終ると、現在のストリングは、そのストリング・テ
ーブルに存在しないと考えられて、それに入る空間がな
い。次に「ストリング終了状態」に入る。 しかし、・・ツシュ・アドレスが2Bよシ大きければ、
バス211O上のアドレスはI’1. A Mアドレス
レジスタ28にゲートされて、RAM29がその記憶場
所において内容を読出すように制御されるORAM出力
のバス51の上に与えられた結果は、比較器う2におい
てレジスタ1つの中の符号番号及び2Bの両方と比較さ
れる。RAM出力が符号番号に等しければ、RA Mア
ドレス・レジスタ28からの新しい符号番号がバフ5ヰ
を経てレジスタ19にゲートされ、「次の文字状態」に
入る。この代りに、バス31の上のRAM出力が値2 
に等しければ、「新ストリング状態」に入る。バス31
の上のRAM出力が2Bまたは符号値の両方に等しくな
ければ、この処理は、この新アドレス値に対するこの「
次の7・ツシュ状態」に再び入ることによってN回まで
繰返される。N個の記憶場所を5ハツシュ関数回路23
からのリード25の上の信号によって示されているよう
に、試みられたとき、このストリングは終りにされて「
2トリング終了状態」に入る。 〔5〕、新ストリング状態、 ストリング・テーブル内
の窓記憶場所に遭遇したことは、探索された拡張ストリ
ングをテーブルの一中に発見しなかったこと及びそのス
トリングをテーブルの中に入れる必要のあることを示す
。これは、拡張ストリングの接頭部符号番号をRA M
 29に書込むことによって達成されるので、拡張スト
リングのための符号値として割当てられたアドレスを予
約する。 従って、RAMアドレス・レジスタ28の中のアドレス
は、その前の値に維持され、RAM29は符号番号レジ
スタ19の内容をバスう0を経てアドレス指定された記
憶場所に書込むように制御される。次に「ストリング終
了状態」に入る。 〔6〕、ストリング終了状態、 この状態に入るとき、
拡張ストリングがストリング・テーブルになかったので
、現在らるストリング符号を出力として伝送すべきであ
ると、決定されていたので新ストリングが始まった。従
って、符号番号レジメタ19からの出力符号信号を出カ
ッくス11に伝送して、新圧縮符号信号がノくス11に
必ろことを外部装置に知らせる「符号ストローフ゛信号
」を1ノード16を経て送る。このインターフェイスの
正確な形は、圧縮データ信号を受ける外部装置の特有の
要求事項に従って変る。新スト1ノ/グは、文字レジス
タ17の中に既にある文字を用いて開始され、その文字
は、それをノくス18を介してff号番号レジスタ19
の最下位Bビットにゲートし、カニつレジスタ1つの高
位C−Bビット位置にあるビット位置にゼロをおくこと
によってあら〃為しめ害り当てられた単一文字のストリ
ングに翻訳されている。その新ストリングを構成するた
めに「断交4二状態jに再び入る。 次に第5図を参照すると、第2図の圧、1HG711−
らの圧縮符号信号に対応するデータ文字夕IJを回復す
る復元器が示烙れている。第う図の復元ン診は、その出
力を外部ランダム・アクセス・ノくソファに直接におく
ことのできるように回路を構成され5そ来るようにする
。この復元装置の実施例は5出力記憶場所のアドレスの
明示管理を用いている。ストリング・テーブル内の記述
項には接頭部スト1ノング内の文字の数を示す「レベル
」値カニある。このレベル値を用いて出カッ(ソファ内
の各文字の適当な位置決めを達成する。復元器からの復
元文字ストリングを受ける外部装置は、そのデータを格
納するのにランダム・アクセス記憶装置を用いると仮定
されている。外部ランダム・アクセス・)くソファを用
いるとき復元器は、各出力データ文字と一緒にアドレス
を与え、そのアドレス75E出カストリング内のその文
字の記憶場所を限定する。最初の記憶場所は、ゼロのア
ドレスに対応する。外部装置はその特定の記憶アドレス
指定の要求事項にマツチするように記憶場所のアドレス
を4M(’rEできる。 第う図の復元器は、出力文字をそJtら75;第2図の
圧縮器によって受けられたのと違う1@序で与えるが、
各文字に付随して記憶場所のイ直を与えろことによって
、最後のアセンブルされたデータストリームは、正しい
順序になる。ランタ′ム・アクセス記憶装置を外部装置
に用いない場合、第5図に関して以下に説明するような
ストリング反転へのスタック機構アプローチを用いるこ
とができる。 第5図の復元器は、バス50の上の圧縮符号信号を受け
て、バス51の上に回復したデータ文字信号の対応する
ストリングを与える。圧縮符号信号は、外部装置からバ
ス50の上に与えられる。 この外部装置は捷た、圧縮符号信号がその外部装置から
入手できて、バス50に加えられろときは常に、ライン
52にデータ使用可能信号を与える。 ライン52の上のデータ使用可能信号は、復元器の制御
装置5うに加えられる。制御装置53は第5図の復元器
のすべてのブロックにリード51Iを経て制御信号を与
える。復元器の制御装置55は、第う図の復元器をその
制御状態を介して、以下に詳細に説明する方法で、順序
づける。制御装置53はまた、追加の入力符号信号を要
求する入力データ・ストローブ信号をライン55を通し
て外部装置に与える。一つの出力文字がバス51の上で
使用可能なとき、制御装置53はリード56の上の外部
装置に出力データ・ス)o−プ信号を与える。 バス50の上の圧縮符号信号は、Cビット符号レジスタ
57に入れられる。単一文字のストリングを表す符号と
複数文字のストリングを表す符号との区別をするために
、符号レジスタ57の出力を比較器58で2Bの一定値
信号と比較する。従って、比較器58は、レジスタ57
の中の符号信号が2 より大きいか小さいかを示す信号
を制御装置5うにリード59を経て送る。レジスタ57
の中の符号値が2Bよシ小さく、従って単一文字のスト
リングを表すとき、レジスタ57の低位ビットがバス6
0を経てBビットの最後の文字レジスタ61に転送され
る。上述のように、単一文字のストリングに対する符号
値は、その文字と同じであるから、最後の文字レジスタ
61ヘバス60を経て転送された単一文字のストリング
は直接バス51に出力される。 レジスタ57の中の圧縮符号信号が比較器5gによって
決められるように2Bよシ太きいとき、レジスタ57の
中の符号値は、RAMアドレス・レジスタ62ヘバス6
5を介して転送される。圧縮符号信号の復元の間のある
幾つかの時点で、レジスタ57の中の圧縮符号は、その
値をあとの処理のために保存するためCビット符号レジ
スタ611へバス65を介して転送される。あとで説明
するある幾つかの条件ではVジスタロ11の中の符号値
ヲRA Ivfアドンス・レジスタ62ヘバス66ta
:介して転送できる0 適当なアドレスを復元器の中の文字ストリングの記憶域
に与えろために、最終文字レジスタ61に格納された文
字信号及び符号レジスタ6)↓に格納された符号信号が
バス67及び68をそれぞれ介してハツシュ関数回路6
つへ加えられる。ノ・ツシュ関数回路6つは、第2図に
関して前に述べたハツシュ関数回路2うと同一である。 ノ・ツシュ関数回路6つは、バス68の上のCビット符
号信号をバス67の上のBビット文字信号と結合してN
個のCビットアドレスをバス70を経てRAMア関数回
路6つは、制御装置53ヘリ−ドア1を介してバス70
の上に与えられたハツシュ・アドレスがその列の中のN
番目のアドレスであるかどうかを知らせる。 ハツシュ関数回路69はまた「新ハツシュ」指令及び1
次のハツシュ」指令を制御装置53から受ける。制御装
置53は「新ハツシュ」指令に応じてN個のハツシュ・
アドレスの中の第1のものを与え、次に「次のハツシュ
」指令の相次いで起るのに応じて、相次ぐハツシュ・ア
ドレスを与えるようにハツシュ関数は路6つに指令する
。、前に述べたように、ハツシュ関数回路6つがN番′
1目のハツシュ・アドレスを与えたとき、一つの信号が
制御回路5うヘリ−ドア1を介して戻される。 RAMアドレス・レジスタ62からのRAMアドレスは
、バス75を介して比較器72及び最終文字レジスタ6
1の両方加えられる。比較器72はまた2 に等しい一
定値信号を受ける。比較器72は、バス73の上のRA
Mアドレス値2Bと比較して、バス75の上のアドレス
が2Bより大きいか小はいかを示す信号を制御装置5う
へIJ −ト雷4を介して与える。それが2Bより小石
いとき、RAMアドレスレジスタ62の中の値は、文字
ストリングの中の最初の文字を後述のようにして回復す
るために最終文字レジスタ61に加えられる。 RAMアドレスレジスタ62の中にロードされたアドレ
スが復元器ストリング・テーブルを記憶するのに用いら
れるRAM75を呼出す。RAM75には、各々がC十
B+Lビットの巾である2゜の記憶場所がある。各スト
リングは、それのCビット接頭部符号、それのBビット
拡張文字及びLピットンベル値を記憶することによって
RAMに記憶される。レベル欄の値は、そのストリング
の接頭部内のビットの数に等しい。各ストリングは、そ
のストリングに割当てられた符号によってアドレス指定
された記憶場所においてRAM75に記憶される。その
ストリングに割当てられた符号は、接頭部符号を後述の
ようにしてストリング拡張文字でハツシュすることによ
って引出される。 RAM75は、R,AM75の「読出し−1、「書込み
」機能を制御するために「読出し」指令と「書込み」指
令を制御装置53から受ける。あとで説明するようにし
て初期設定するために、 RAM75は、一定値信号2
B、ゼロ及びゼロをRAMアドレスレジスタ62によっ
てアドレス指定されたRAM記憶場所の接頭部符号、文
字及びレベルの各欄に書込むために受ける。これらの値
は制御装置53の制御のもとに加えられて、「書込み」
指令の加わったときに入れられる。RAM?5はまた制
御装置5′5によって制御されて、バス76を経て符号
レジスタ6I+からくる符号値、バス77を経て最終文
字レジスタ61からくる文字値及びバス7つを経てレベ
ル・レジスタ78からくルレベル値をRAMアドレス・
レジスタ62によってアドレス指定されたR A M記
憶場所の接頭部、文字及びレベルの各欄にそれぞれ入れ
るために選択的に受ける。これらの値は、制御装置53
からの「書込み」指令に応じてそれぞれの欄に書込寸れ
る0 制御装置55はまた、「読出し」指令に応じてRAM?
5を制御して、RAMアドレス・レジスタ62によって
アドレス指定されたRAM記憶場所の接頭部符号値に格
納された接頭部符号値をバス80に与える。このバス8
0の上の符号値は、検出器g1のほかにRAMアドレス
・レジスタ62にも加えられる。検出器81は、RAM
出力のバス80上の接頭部符号が2Bに等しいかどうか
を決定して、それ相応に信号をリード82を介して制御
装置53に与える。 制御装置55はまた5文字値を文字欄からバス8うを経
て最終文字レジスタ61へ選択的に与えるようにRAM
75を制御する。文字値は、「読出し」指令に応じてR
AMアドレス・レジスタ62によってアドレス指定され
たRAM記憶場所の文字欄からバス83の上に与えられ
る。同様にして、制御装置5うは、レベル値をバス81
1を経てレベル・レジスタ8うまたはアドレス加算器8
6のいずれかに与えるようにRAM?5を制御する。レ
ベル(+Hj:、RAMアドレス・レジスタ62により
て呼出されたR A M記憶場所のレベル欄からバス8
IIへ加えられる。バス8Ilの上のレベル値のレベル
・レジスタ&5及びアドレス加算器86への経路指定は
、復元器の現存の状態に従って制御装置53によって制
御される。 第5図の復元器は外部ランダム・アクセス記憶装置内で
適当に位置が合うようにするために出力文字信号にアド
レスを割当てる装置を含んでいる。 従って5アドレス加算器86はそのような記憶場所アド
レスを外部装置にバス87を通して与える。 アドレス加算器13Gは、アウトポインタ・レジスタ8
8からの入力、RAM?5からのバス8IIを通しての
レベル値及びレベル・レジスタ78からバス8つを通し
てのレベル値を受ける。アドレス加算器86はまた、バ
ス90を通してゼロ値信号を受ける。制御装置5うは、
アドレス加算器86ヲ制御して、バス811の上のレベ
ル値、バス8つの上のレベル値またはバス90の上のレ
ベル値のいずれかを復元器の現存の状態及びその状態の
間に存在する論理的諸条件に従うアウトポインタ・レジ
スタ8gの中の値をあとで説明するようにして加える。 加算の結果は、記憶場所アドレスをバス87の上に与え
る。 アドレス加算器86の出力はまた、アウトポインタ・レ
ジスタ88への入力としても加えられる。 制御装置53は、アウトポインタ・レジスタg8を制御
して、現存のアウトポインタの値を加算器g6に分ける
加算の結果で置き換えるか、または単にバス87の上に
記憶場所のアドレスを発生するためのベース・アドレス
を加算器Fi6に与えるだけにする。制御装置55はま
た、レベル・レジスタ78及び85を制御して、レベル
・レジスタ85からレベル・レジスタ78へレベル値ヲ
転送して、その転送経路にある加算器91を介してその
値を1だけ大きくする。な訃、制御装置5うは、レベル
・レジスタ78及び85を制御して、レベル・レジスタ
78の内容をレベル・レジスタ85ヘバス92を介して
転送する。この装置はまた、1ノベル・レジスタ85及
びアウトポインタ・レジスタ88への入力を備え、あと
で説明する諸条件のもとてこれらのレジスタをゼロにす
る。 第5図の復元器はまた、Cビット信号をRAMアドレス
・レジスタ62ヘバス911を経て与える初期設定計数
器9うを備えている。計数器95をそれに加わるゼロの
値にされた信号を介してゼロにセットできる。制御装置
5うは、「計数」指令を介して計数器95を制御して、
「計数」指令の加わるごとに計数器の内容に1を加える
。計数器95は、それが計数2°に達したとき、制御装
置53にリード95の上のキャリアウドまたはオーバ7
0−信号を介して合図する。初期設定計数器95は、R
AMγ5を初期設定するのに用いられ、それの記憶場所
のすべてを逐次に呼出して一定値2B、ゼロ及びゼロを
接頭部符号、文字及びレベルの各欄にそれぞれ書込むこ
とによって空にする。 第5図の復元器の基本動作は、次の様に要約される。 L 各データブロックごとに、RAMを空に初期設定す
る。 と 乙 各入力符号ごとに、符号≧符号番号レジスタな読出
す。前の符号からのあるデータをス) IJング・テー
ブル更新のために保存する。 5 符号レジスタ=RAMアドレス 接頭部符号、拡張文字、ストリング長さを作るR A 
Mを読出す。 声 さによって決まった記憶場所におに出力;接頭部符号き
符号番号レジスタ;ステラ接頭部符号< 2 Bなら;
符号値珪文字としてe出力; ステソプキへ行く。 ヰ、 文字ス) IJング更新ストリング・テーブルの
終りにおいて: 前に受けた符号及び最終出力文字をノ・ツシュ(前の符
号、最終文字)によって作られた列から最初の空の記憶
場所に書込む、 ステップ2へ行く。 第5図を続けて参照すると、以下のものが第5図の復元
器の状態機械記述語である。 状態O: 「待ち状態」、各データブロックの始めにお
いて 初期設定計数器=ゼロ アウトポインターゼロ データ使用可能信号を待つ;状態1へ 行く。 状態1: 「RAMを初期設定」 初期設定計数器iRA Mアドレス 2B、ゼロ、ゼロ無RAM入力 RA Mを書込む 初期設定計数器へ+1を加える 初期設定計数器く2°なら:状態lを 繰返す: そうでなければ状態2へ行く。 状態2: 「初期入力符号を処理する」入力符号記号≧
符号レジスタ1 人力データ・ストローブ 符号値(下位Bビット)〉最終文字レ ジスタ 記憶場所アドレス−アウトポインタ; データ 出力データ・ストローブ レベル・レジスタ1=ゼロ 状態5へ行く。 状態3= 「次の入力符号」 符号レジスタ1趣符号レジスタ2 状態ヰ。 (レベル・レジスタ1)+1会レベ ル・レジスタ2 (レベル・レジスタ2)+(アウト ポインタ)≧アウトポインタ 新しい入力が使用可能でなければ。 人力符号≧符号レジスタ1を読出す、 入力データ・ストローブ 符号レジスタ1〉2 ならば: 符号レジスタ1≧−RAMアドレス 状態キヘ行く 符号レジスタ1く2 ならば: レベル・レジスタ1千〇 符号値(符号レジスタ1の下位Bビ ミ最終文字レジスタ 記憶位置アドレス−アウトポインタ; 出力データ・ストローブ 状態6へ行く。 「最初の文字サイクル」 RAMを読出す 、うLや 符号(RAM)≠2Bば正常の場合〕ニレベル(RAM
)eレベル・レジスタ1符号(RAM )北RAMアド
ンス 文字(FLAM)≧最終文字レジスタ 記憶場所アドレス−アウトポインタ 十レベル(RAM) 符号(RAM)=2 A[:異常の場合〕ニレベル・レ
ジスタ2≧レベル・レジスタ1符号レジスタ2≧RAM
アドレス 記憶場所アドレス−アウトポインタ 十レベル・レジスタ2;出力f− タストロープ 状態5へ行く RAMアドレス〉2 八: RAMを読出す符号(RA
M)≧RAMアドレス 文字(RAM)斗最終文字しジスタ 記憶場所アドレス=アウトポインタ 十レベル(RAM); 出力データ・ ストローブ 状態5へ行く RAMアドレス< 2 Bならば; RAMアドレス(下位Bビット)≧ 最終文字レジスタ 記憶場所アドレヌ=アウトポインタ: 出力データ・ストローブ 状態6へ行く 状態6: 「ストリング・テーブル更新」ハツシュ(符
号レジスタ2、最終文字レジスタ)件RA Mアドレス RA Mを読出し 符号(RAM)=2 及びRAMア ドレス〉2 ならば、状態7へ行く その他の場合:新ノ・ツシュ値で状態 6を繰返す これが最終ノ・ツシュならば、状 態5へ行く。 状態7: 「書込みサイクル」 RAMアドレスを変えないで 符号レジスタ2会符号(RAM) 最終文字レジスタ≧文字(RAM) レベル・レジスタ6≧レベル(rma )RAMを書込
む 状態うへ行く。 上に与えられた状態機械記述語に関する第5図の復元器
の動作のさらに詳細な説明を次に行う。 Co) 待ち状態、 1ブロツクの圧縮入力符号信号を
待っている間、第5図の復元器は、この状態にある。「
待ち状態」の間、制御装置53は、初期設定計数器95
をゼロにリセットする。制御装置5′5はまた、出力文
字信号の外部出力記憶装置への相次ぐ転送が最低の使用
可能なアドレスで始まるようにアウトポインタ・レジス
タ8gをゼロにリセットする。入力符号を供給する外部
信号源からのリード52の上のデータ使用可能信号は、
入力符号が利用できるときを指示するのに用いられる。 入力符号が使用可能になると、リード52の上のデータ
使用可能信号は、制御装置55に「初期設定状態」に入
るように合図する。 〔1〕 初期設定状態、 ランダム・アクセス記憶装置
RAM?5の内容は、空であるように初期設定されろ。 RAM?5はその2°の記憶場所の各々に三つの種類の
異ったデータ欄を含み、すなわちCビットの接頭部符号
値、Bピットの拡張文字、゛及びbビットのレベル値を
含む。各記憶場所は、文字のストリングに対応し、そこ
では記憶場所のアドレスが、そのストリングの符号値で
あって、その記憶場所の内容は、その接頭部ストリング
及び拡張文字によってそのストリングの組成を与える。 レベル欄は、接頭部ス) IJング内の文字の数を与え
、出力列の中の適当な位置にある出力文字を位置指定す
るときに用いられる。Lビットは、どのスト1,1ング
長さも20文字を超えない(ここでLはC以下である)
という仮定のもとに、レベル値に与えられる。R,A 
M 75のすべての記憶場所は、空記号2Bをそれの接
頭部符号値に入れることによって初期設定される。文字
値欄及びレベル値欄は、これらの欄が初期設定を必要と
せず、簡易化を望む場合、現存の値で残すことができる
けれども、ゼロに初期設定される。最初の2+1記憶場
所は、これらの記憶場所が復元器の動作の量刑のやシ方
で呼出されることは決してないが、実現の便宜上初期設
定される。 初期設定は、Cビット初期設定計数器95の中の値をバ
ス911を経てRAMアドレス・レジスタ62ヘゲート
することによってメモリ・サイクルを繰返して達成され
る。RAMの入力は、一定値2B及びゼロでるるように
選ばれる。RAM75は、選択された入力データをRA
Mアドレス・レジスタ62によって指定をれた記憶場所
に書込むように制御される。初期設定計数器93は、そ
の現在の内容に1を加えることによって数え上げるよう
に指令される。この一連の事象は、各記憶場所ごとに1
回あて合計2°回繰返される。2 のそのような計数の
のちに、初期設定計数器93は、2°の計数が発生した
ことを合図するオー・(フローまたはキャリアウド信号
を制御装置5うにり−ド95を介して与える。これによ
って第5図の復元器が「最初の符号状態」に進む。 〔2〕 最初の符号状態、 初期設定ののち、第5図の
復元器は、バス50の上にある最初の入力符号信号を読
取って、そのCビットをCビット符号レジスタ57に取
入れる。次に入力データ・ストローブ55の上に制御装
置5うによって一つの信号を与えて、次の入力符号を外
部装置によって入力バス50の上に与えさせる。第2図
の圧縮器に関して上に論じた理由により、レジスタ57
に現在ある初期符号信号は、あらかじめ割当てられた単
一文字のストリング符号の一つであると分っている。従
って、この符号の下位Bビットは、データメツセージの
最初の文字であるとわかり、この文字を復元器からの最
初の出力として伝送する0これは、符号レジスタ57の
下位Bビットをバス60を経て最終文字レジスタ61に
転送することによって達成され、その文字は、出力文字
バス51に直接与えられる。この最初の文字は外部記憶
装置の最初の出力記憶場所におかれることになっている
ので、ゼロの記憶場所アドレスがアウトポインタ・レジ
スタ8gにある値をアドレス加算器86を通過させて一
定値ゼロに加えることによって発生される。従って記憶
場所アドレス・バス8了の上のアドレスは、要求通りゼ
ロである。出力バス51及びアドレス・バス87が正し
い新情報を含むことを指示する出力データ・ストローブ
・ライン56の上の信号が外部装置に転送される。 続く復元器サイクルに備えて、レベル・ンジス゛りg5
は、ゼロにセットされる。これは受取ったストリング内
の接頭部ストリングの長さであるとわかっているからで
ある。次に「次の入力状態」の主処理サイクルに入る。
〔9〕 次の入力状態、 各新入力符号は、外部装置か
ら読込捷れて、それの処理が以下の論理に従って開始さ
れる。符号レジスタ57かもの現在の符号値は、たった
いま処理された符号であって、それをあとの更新サイク
ルに備えて保存するためにバス65を経て符号レジスタ
611に転送される。 同様ニ、レベル・レジスタ85にある値は、その値を転
送経路にある加算器91を用いて51だけ大きくして、
レベル・レジスタ7gに転送はれる。 この増分が行われるのは、作られるべき新ストリングが
処理されたばかりのストリングの接頭部より1文字長い
接頭i371. リングをもっているからである。こん
どは、アウトポインタ・レジスタ88にあるアウトポイ
ンタ値が新ストリングからの文字を外部記憶装置内に直
く記憶場所アドレスを含むように更新される。この記憶
場所アドレスは、処理されたばかりのストリングの長は
を前のペースアドレスに加えたものである。これはレベ
ル・レジスタ78の中の更新されたばかりのレベル値を
アウトポインタ・レジスタ88にあるアウトポインタ値
ヘアドレス加算器86によって加えることによって達成
され、そしてその結果は、アウトポインタ・レジスタg
8に戻される。 次に、新入力符号信号は、1が使用可能であれば読出さ
れる。新入力符号が使用できないことをライン52の上
のデータ使用可能信号が指示する場合、そのメツセージ
を完全に処理してしまったので、「待ち状態」に新しい
メツセージを待つために再び入る。正規の状態において
は、新入力符号信号が使用可能で、それは入力バス50
から符号レジスタ57にゲートされろ。ライン55の上
の入力データ・ストローブ信号は、外部装置に向けて発
せられて、その装置に次の符号信号を入力バス50に与
えさせる。 レジスタ57にある新符号信号は、比較器5gを用いて
2Bに比較される。符号レジスタ57にある新符号値が
2B工り大きれば、これは、RAM75の中のストリン
グ・テーブル索引によって翻訳される正規の符号である
。従って、レジスタ5γにあるこの符号値は、バス6う
を経てRAMアドレス・レジスタ62へ転送され、制御
装置55は、復元器を「最初の文字状態」に入るように
制御する。第2図及び第ろ図のデータ圧縮及び復元装置
の適正な動作のもとに、符号レジスタ57が値2Bを含
むことができない理由は、その符号が第2図の圧1m器
によって正しく与えられないからである。 実際に、符号レジスタ57が値2Bを含まなければ、任
意の都合のよい誤り手順を実施できる。 符号レジスタ57の中の値が2Bより小さければ、この
符号値は、単一文字のストリングを定ぬるので、そのス
トリングを処理するのにRAM75にアクセスする必要
がない。この状況に分いて、レベル・レジスタg5がゼ
ロにセットされる理由は、単一文字によってあらかじめ
定められたストリングの接頭部ストリング内に文字がな
いからである。符号レジスタ5了の下位Bビットである
文字値は、バス60を経て最終文字レジスタ61へ転送
され、そこから外部装置へ出力バス51を通って転送さ
れる。この状況において、アウトポインタ・レジスタ8
8が正しい外部アドレスを含み、それでアウトポインタ
・レジスタ88の中のイ直がアドレス加算器86を通過
して、バス87の上に記憶場所アドレスを与えるので、
その値にゼロが加えられる。次に、ライン56の上の出
力データ・ストローブ信号が外部装置に正しいデータが
出力文字ライン及びアドレス・ラインを通して使用でき
ることを指示するために発せられる。1文字のストリン
グの処理を完了したのちに「更新状態」に入る。 〔4〕 最初の文字状態、 この状態では、一つのスト
リングからの最初の文字を引出して、一つのストリング
の始めにだけ発生する他の特殊化関数を実行する。RA
M?5は、RAMアドレス・レジスタ62の中の符号が
前の状態でロードされたので、その符号によって指示さ
れるストリング記憶場所の内容を読出すように制御され
る。RAM75は、選択されたストリングに対する三つ
の出力、すなわち、バス80の」二の接頭部ストリング
符号、バス83の上の拡張文字、及び接頭部ストリング
の長さであるバス8Ilの上のレベル値を与える。バス
80の上の接頭部ストリングは、比較器81によって値
2Bと比較される。 バス80の上の接頭部符号が2Bに等しくない場合(こ
れは正常な場合である)、それは、それ以上の文字を得
るためにさらに処理されるべき正当な接頭部ストリング
符号である。ノくス8′5の上の拡張文字は、最終文字
レジスタ61に転送てれる。バス81Iの上のレベル値
は、そのストリング内のこの文字の位置を示し、この位
置の値は、アドレス加算器86を経てアウトポインタ・
レジスタ88の中の値に加えられて、その文字に対する
出力記憶場所アドレスをバス87に与える0次に、ライ
ン56の上の出力データ・ストローブ傷号は、正しいデ
ータが使用できることを外部装置に指示するために発せ
られる。なお、バス811の上のレベル値は、あとの更
新において用いるためにレベル・レジスタ85に格納さ
れる0 バス80の上の接頭部ストリング符号値が2Bに等しけ
れば、これは、アドレス指定されたRAM記憶場所が空
であり、受けたストリング符号がストリング・テーブル
内の一つの記述項に対応しないことを示す。この状況は
、次の保留中のテーブル更新がそのストリング記述項を
作シ出すような異常な場合に起る可能性があるだけであ
る。すなわち、受けたばかりの符号は、処理されたばか
りのストリング(符号レジスタ6IIの中の符号とレベ
ル・レジスタ78の中のレベル値)である接頭部ストリ
ングをもつストリングを表す。現在のストリングの最初
の復号された文字は、前のス) IJソング拡張文字で
あり、現在のストリングの中に見出されるべき最終の復
号てれた文字と同じ文字であって、それは、それらの文
字が同じ接頭部ストリングをもつので、前のストリング
の最終の復号された文字と同じ値を有し、それは最終文
字レジスタ61に現在ある文字である。従って、この異
常な場合を実現するために、符号レジスタ611の中の
値をバス66を経てRA、 Mアドレス・レジスタ62
へ接頭部ストリング符号として転送する。 最終文字レジスタ61の中の値は、出力文字バス51を
駆動するのに変更しないで用いられるが、一方、レベル
・レジスタ78の中のイ直は適当な出力記憶場所アドレ
スをバス87に作るためにアドレス加算器86を介して
アウトポインタ・レジスタ88の中の値に加えられる。 次に、制御装置53は、正しい出力を外部装置に指示す
るために出力データ・ストローブをライン56に発する
0レベル・レジスタ68の中の値は、あとでの更新のた
めに長さ情報を与えるのにバス92を経てレベル・レジ
スタ85に転送される0 このストリングから1文字を出力してしまうと、残りの
文字は「あとの文字状態」に入ることによって発生され
る。 〔5〕 あとの文字状態、 各接頭部ス) iJソング
、拡張文字とよシ小さい接頭部ストリングに分離され、
これはあらかじめ限定てれた単一文字のストリングに達
するまで繰返して実行される。 RA M 7 トレス・レジスタ62にβる前の状態か
らの接頭部ス) IJソング号は、比較器72において
2Bと比較される。この接頭部ストリング符号が2Bよ
シ太きければ、RAM?5の内容が続出されて以下の通
りに用いられる。この接頭部符号は、次の状態において
用いるためにノくス80を経てRAMアドレス・レジス
タ62にゲートされる。 バス8〉の上の拡張文字は、出力文字バス51に出力す
るために最終文字レジスタ61にゲートされる。バス8
4の上のレベル値は、アドレス加算器S6を経てアウト
ポインタ・レジスタ8gの中の値に加えられ、適当な出
力記憶場所アドレスをバス87の上に作る。出力データ
・ストローブ信号は、ライン56の上に発せられて、こ
の「あとの文字状態」に再び入ってその処理を繰返す。 比較器72がRAMアドレス・レジスタ62の中の符号
値が2Bより小さいことを示す場合、そのストリングの
終9がきたことになる。このあらかじめ限定された符号
値は、最終文字を含んでいるのでRAMアドレス・レジ
スタ62の下位Bピットがバス75を経て最終文字レジ
スタ61に転送される。ゼロがアウトポインタ・レジス
タ8gの中の値にアドレス加算器86を介して加えられ
、バス87に適当な出力記憶場所アドレスを発生する。 次に出力データ・ストローブ信号がライン56に与えら
れる。現在ストリングについての処理が終ると、「更新
状態」に入ってストリング・テーブルに一つの記述項を
加える。 〔6〕 更新状態、 一つのストリングが完全に処理さ
れたのちに、ストリング・テーブルは、このストリング
の最終文字を前のストリングの勾号及びレベルと一緒に
用いて更新される。正しい新符号番号を新ス) l)ン
グに割当てるためには、第2図の圧縮器について前に論
じたのと同じノ・ツシング関数回路が用いられる。ノ・
ツシュ関数は、空テーブル記憶場所に遭遇する1で逐次
に探索される一連のN個のアドレスを発生する。従って
、右号レジスタ611に格納された前の符号呟は、最終
文字レジスタ61からバス67を経てきた値と共にバス
68を経てノ・ツシュ関数回路6つへ伝送される。ノ・
ツシュ関数回路6つが発生したノ・ツシュ値は、バス7
0を経てRAMアドレス・レジスタ62にゲートされる
ORAMアドレス・レジスタ62の中のアドレスが、比
較器72によって指示されるように、2Bより太きけれ
ば、RAM?5は、その記憶場所の内容を読出すように
制御される。比較器72がRAMアドレス・レジスタ6
2の中のアドレスが2Bより太きくないことを示す場合
、そのアドレスは用いられず5ハツシュ関数回路6つは
、新しい値を発生するように制御される。その新しい値
は、バス70を経てRAMアドレス・レジスタ62にゲ
ートされ、試験が繰返される。ハツシュ関数回路6つが
2 よシ大きい正しいアドレスを与えろとき、RAM?
5は、その記憶場所で読み出きれる。その記憶場所から
読み出されたバス80の上の接頭部符号は、比較器81
において2Bと比較される。読み出された値が2Bに等
しければ、その記憶場所は、空であって「書込み状態」
に入ってストリングを挿入する。バス80の上の接頭部
符号が2Bに等しくなければ、この記憶場所は、既に占
有されており、使用できない。次に、この「更新状態」
は、これが新しいストリングをストリング・テーブルに
加えないN番目のアクセスでなかったならば、再び試み
るために新ハツシュ値を再び入れられて「次の入力状態
」に入って、次のストリングを処理し始める。 〔7〕 書込み状態、 空RAM記憶場所力よ新ストリ
ングのために位置指定されたとき、その言己憶場所に対
するアドレスは、新ストリングの符号として割当てられ
、ストリング情報が挿入される。 制御装置5うは、符号レジスタ61Iの出力をノ(スフ
6を介して入力としてRAM75の接頭部9q号欄にゲ
ートする。最終文字レジスタ6Lから)くスフ7を経て
出る出力は、RAM75の文字欄にゲートされ、レベル
・レジスタ78の値は、ノくスフ9を介してRAlvj
75のレベル欄にゲートされる。 RAM7ドレス・レジスタ62をその前のイ直に保って
おいて、RAM75は、このデータな呼出嘔れた記憶場
所に書込むように制御されろ。このようにしてこのスト
リングの処理を終ったとき、「次の入力状態」に入る0 上述の7・ツシュ関・数回路を以下のように装置として
実現できるOBビット文字及びCビット符号の場合、N
個のノ・ツシュ値は次のように発生される:最初のノ・
ツシュ(符号、文字)−符号O文字こ\で文4は入力文
字をピットを左右逆にし、相補形で、左C−Bビットを
符号の左側の位置へ移したものである。 すなわち、符号においてC(左に)から1(最下位ピッ
ト)及び文字においてBないし1と番号をつけられたビ
ット位置に対して、ノ・ツシュ出力HはCないし1の番
号をつけられる。 H(C) =符号(C)0文字(1)01H(C−1)
=符号(C−1)0文字(2)01H(C−2)−符号
(C−1)O文字くう)01H(C−B−1)−符号(
C−B−1)O文字(B)01H(C−B−2)−符号
(C−B−2)H(1) =符号(1) 残りのハツシュは、一定値を名前の値に、Cピット以上
のキャリーを無視して、加えることによって作られる。 次のハツシュ=前のハツシュ+[(2槃号+1)001
01・・・01002 〕(モジュロ2 )このハツシ
ング関数は、任意のシステムの論理ゲートで実現でき、
本発明において使用できるノ・ツシング関数の唯一の例
であることがわかる。上に論じた基準を満足する他のバ
ッジフグ関数を当業者が容易に得ることができる。 第4図及び第5図は、本発明の最高の圧縮を具体化した
ものを装置に実現するためのそれぞれ圧縮器及び復元器
を示す。第4図及び第5図の実施例は、第2図及び第5
図の高性能実施例よりわずかに値段が高くかつ動作がわ
ずかに遅い。この実施例は、高性能実施例とほぼ同じ適
応圧縮手順を用いるが、高性能実施例とは違って、圧縮
器は、可変長さの圧縮された出力符号信号を発生する。 高性能実施例に関して上述したものと同様にして、第4
図及び第5図の高圧縮実施例は5 Bビット・バイト入
力文字信号及び2°の記憶場所のス) IJング・テー
ブルを用いる。圧縮符号記号は、ストリング・テーブル
がいっばいになると、大きさを増してCビットの最大長
さに達する。必要に応じて、この符号信号は、新しい文
字に出合ったときにBビットだけ拡張される。 このテーブル内の各ストリングがCビット識別子を割当
てられて、これらの識別子が1で始まる数の順序で割当
てられる。?D以下の数の符号を割当てられたとき5こ
れらの符号の下位Dビットだけを圧縮データ信号として
伝送する。ストリング・テーブル内の各記憶場所は、C
ビットの接頭部ストリング識別子及びその記憶場所にあ
るストリングに割当てられた新しいCビット符号を含ん
でいる。従ってストリング・テーブルの2 の記憶場所
の各々は、20ビツトの巾である。この高圧縮実施例の
圧縮器で用いられるハツシュ関数は、先に説明した高性
能実施例で用いられたものと同一である。しかし、この
高圧縮実施例に分いては、ハツシュ関数回路は、圧縮器
に用いられるだけである。 この高圧縮実施例の復元器においては、圧縮器における
と論理的に同じストリング・テーブルが記憶されている
が、各記憶場所は、接頭部九対して割当てられた識別子
狗号及び拡張文字から成っている。各ストリングは、そ
のストリングに割当てられた圧縮符号識別子によってア
ドレス指定された記憶場所に記憶されている0この高圧
縮実施例においては、ス)IJソング間字反転手順は5
そのストリング内の文字の順序を逆にする「後入れ先出
し」スタックによって行われる。従って、この高圧縮実
施例の復元器は各ストリングの出力文字をそれらの正し
い順序で与える。 次に第4図を参照すると、本発明の最高圧縮実施例の圧
縮器が示されている。この圧縮器は、入力文字信号をバ
ス110を通して受けて、圧縮出力符号記号信号をビッ
ト直列形式でライン111に与えろ。この入力文字は、
外部装置からバス110に与えられる。この外部装置は
また、入力文字信号が外部装置から使用できて、バス1
’lOに加えられるときは常に、データ使用可能信号を
ライン112に与える。ライン112の上のデータ使用
可能信号は、圧縮器制御袋敢11うに加えられる。圧縮
器制御装置11うは、第)1図の圧縮器のブロックのす
べてに制御信号をリード1111を介して与える。圧縮
器制御装置115は、第)1図の圧縮器をそれの制御状
態を介して以下に詳細に説明する方法で順序づけする。 制御装置113は捷だ、追加の入力文字を要求する文字
ストローブ信号をライン115を通して外部装置にカえ
る。 バス110の上の入力文字はBビット文字レジスタ11
6に入れられる。単一文字を出方線111に転送するこ
とになっているとき、文字レジスタ116は、その文字
のBビットをバス11γヲ介してシフト回路網118に
ゲートするように制御装置113によって制御てれる。 シフト回路網11Bは、ビット直列出力をライン111
に与え、ハス117 (7)上のBピットを受けて、こ
れらのビットをライン111に直列に与えるように制御
装置115によって制御される。 第4図の圧縮器は、さらに、圧縮ストリング符号信号を
保持して出力ストリング符号をシフト回路網118にバ
ス120を介して与えるビット符号番号レジスタ11つ
を備えている。符号番号レジスタ119をそれに加わる
ゼロの値にされた信号によってゼロに初期設定できる。 第4図の圧縮器は、さらに、ストリング符号記号信号を
昇順に入力バス110に加えられる入力データ・ストリ
ームのパースされたストリングに割当てろCビット符号
計数器121を備えている。 制御装置11うの制御のもとに、符号計数器121歓れ
に加わるゼロの値にされた信号を介してゼロにリセット
でき、捷だ「計数」指令信号を介して1だけ増やされた
現存の計数をもつことができる。計数器121は、検出
器122に符号割数器121の中の計数が値2°−1に
達したときを制御装置115にライン123を介して合
図する出力を与える。この値は、計数器がオール1の状
態に達するとき、Cビット計数器121によって達成さ
れる。符号計数器121の出力は1だ、ソフト回路網1
18によってシフトアウトされるべきビットの数を定め
る信号をシフト回路網118にバス121tを介して与
える符号大きさ回路123に加えられろ。上述のように
、Dビットがシフトアウトされる(ここでDはC以下で
ある)。 符号大きさ回路12うを5N71+1111!優先順位
回路網のような標準Cビット優先順位符号器回路によっ
て実現できる。符号計数器121は優先順位符号器に結
合され、そして計数器121の昇順重みのビットを優先
順位符号器の昇順優先順位に並んだ優先順位入力にそれ
ぞれ結合される。次に優先順位符号器は、Dに対する値
である2進数信号を与える。シフト回路網118にバス
120に与えられた出力符号信号のDビットをライン1
11に直列に与えさせるように数りは、Dシフト・クロ
ック・パルスのパケットをゲートするためにシフト回路
網11gの中で用いることができる。優先順位符号器を
符号大きさ回路125に用いることに対する多くの代替
のものが普通に熟練した論理設計者には容易に明らかで
あろう。 例えば、シフト回路網118は、出力符号をバス120
に受けて符号大きさ回路12うによって制御されたシフ
トクロックパルスに応答して出力符号のDビットをシフ
トアウトするシフト・レジスタを用いて実現できる。符
号大きさ回路12うによって制御されるDクロックパル
スのパケットに応答して、シフト回路網11gの中に入
っているシフト・レジスタがクロック信号をD回与えら
れる。シフト・レジスタの構成は、この技術分野では周
知であり、その正確な詳細は、データを受ける外部装置
のインタフェースによって変る。上述のように、シフト
回路網11gは捷だ、B文字ビットをバス117からラ
イン111のシフト回路網118によって伝送するのを
制御する普通のクロック制御回路を備えている。 レジスタ11つからの符号記号信号及びレジスタ116
からの文字信号は、それぞれノくス125及び126を
経てノ・ツシュ関数回路127へ加えられろ。ノ・ツシ
ュ関数回路127は、上述の本発明の高性能実施例に関
して用いられたノ・ツシュ関数回路と同一である。ノ・
ツシュ関数回路127は、バス125の上のCビット符
号信号をノくス126の上のBビット文字信号と組合わ
せて、ノくス128の上に順次にN個のCビットアドレ
スを与える。 ハツシュ関数回路127は、リード129を介して制御
装置115にバス12gの上に与えられたハツシュアド
レスがその列の中のN番目のアドレスであるかどうかを
知らせる。 ハツシュ関数回路127はまた、制御装置113から「
新・・ツシュ」指令及び「次の・・ツシュ」指令を受け
る。制御装置115は「新ノ・ツシュ」指令に応じてN
個の・・ツシュアドレスの最初のものを与え、また「次
のハツシュ」指令の相次ぐ発生に応じて相次ぐハツシュ
アドレスを与えるようにハツシュ関数回路127に指令
する。上述のように、ハツシュ関数回路127がN番目
のハツシュアドレスを与えたとき、一つの信号をリード
129を経て制御装置11うに戻す。 バス128の上のハツシュ・アドレスは、CビットRA
Mアドレス・レジスタ150に加えられる。RA M 
7 トレス・レジスタ130にロードされたアドレスが
圧縮器ストリング・テーブルを記憶するのに用いられる
RAM151を呼出す。 RAM131は各々2Cビツト巾の2 の記憶場所に編
成される。一つの文字ストリングが一つの記憶場所に符
号計数器121によって割当てられたそのストIJング
に対する符号番号及びその接頭部符号、すなわち、その
ス) IJングの最終文字を除くすべての文字を含むス
トリングの符号番号を入れることによって記憶される。 RAMIIIは、すべての記憶場所が最初に空であるこ
とを示すオール・ゼロをストリング符号欄に含むように
初期設定される。文字をもたないストリングである符号
ゼロのストリングは、RAM131の中に記述項をもた
ない。 RAM151は、RAM 151の「読出し」及び「書
込み」機能を制御するために制御装置115から「読出
し」指令及び「有込み」指令を受ける。 制御装置113がRAM131に「書込み」機能を実行
するように指令すると、RAMアドレス・レジスタ13
0によって呼出された記憶場所のストリング符号欄がバ
ス1う2を経て符号計数器121のCビット出力を受け
、また呼出された記憶場所の接頭部符号欄が符号番号レ
ジスタ119からの入力をバス1′53を経て受ける。 制御装置11うがRAM13’lにRAMアドレス・レ
ジスタ130によって呼出された記憶場所の内容を読出
すように指令すると、呼出された記憶場所の接頭部符号
がバス1′55を経て比較器1511に加えられ、また
呼出された記憶場所のストリング符号がバス136を経
て符号番号レジスタ11つへ加えられると共に、ゼロ検
出器137にも加えられる。比較器134はまた、バス
158にゼロの値をもつ信号を受ける。第11図の圧縮
器の現存の状態次第で、制御袋@11うば、バス1う5
の上の接頭部符号とレジスタの中に記憶された符号とが
等しいか等しくないかを試験するか、またはレジスタ1
1つの中の符号信号がゼロに等しいか等しくないかを試
験するように比較器16キを制御する。これらの試験の
結果は、リード139を経て制御装置113に与えられ
る。第4図の圧縮器の現存の状態に従えば、制御装置1
15は、バス136の上のストリング符号がゼロに等し
いか等しくないかを決めるためのゼロ検出器157を始
動させる。決定の結果は、リード111Oを経て制御装
置115に与えられる。 第4図の圧縮器はまた、Cビット信号をバス11↓2を
経てRAMアドレスレジスタ1′50に与える初期設定
計数器1社1を備えている。制御装置115は、計数指
令を介して計数器11J1を制御してその計数器の内容
を計数指令を加えるごとに1だけ増やす。計数器111
は、それが計数2゜に達したときを制御装置115にリ
ード1115の上のキャリアウドまたはオーバフロー信
号を介して知らせる。初期設定計数器1111は、RA
M131の記憶場所のすべてを順次に呼出してス) I
Jング符号欄にバス1う2から得た値ゼロを書込むこと
によってRAM151を空に初期設定するのに用いられ
る。それは必要ではないけれども、接頭部符号欄を実現
の便宜上バス15うから得た値ゼロを書込むことによっ
て初期設定してもよい。 一般的にいえば、第4図の圧縮器に関しては、ライン1
11に与えられた各出力符号記号信号は、符号計数器1
21の中に現存す7+値によって定められたDビットの
長さをもっている。符号計数器内の最高のゼロでないビ
ットがD番目のビットであって、その結果圧縮器出力右
号の大きさが符号計数器内の値の大きさに等しい。圧縮
器によって伝送されるべき最初の符号記号信号は、ゼロ
ビットの巾であるが、それに付加されたBビットの文字
記号信号をもっている。二番目の符号記号信号は、1ビ
ツトの長さで、次の二つの符号記号信号は、二つのビッ
トを各々含んでいる。次の四つの符号記号信号は、5ビ
ツトを各々含んでいる、など。これらの符号記号の幾つ
かはまたそれらに追加されたBビットの文字値をもって
いる。値りは5Cピくトで最大に達する〇 第4図の圧縮器の基本動作は次のように要約される。 1、各データ・ブロックごとに、RAMを空に初期設定
する。 2、符号レジスタをゼロ符号でスタート、最初の入力文
字を読出す 5、 ハツシュ←符号レジスタ、文字)曇N個のRA 
Mアドレスの列 RAM記憶場所が空ならば、 l t< 符号レジスタ、符号計数器≧−RAM艶書込む、 符号レジスタのDビットを出力として伝送する; 符号計数器を増分する;ゼロ≧符号レジスタ; 状態1
: 接頭部符号(RAM)−符号レジスタならば、 一テ 新符号(RAM)無符号レジスタ、 新入力文字を読出す、 符号直が見出されなければ、 符号レジスタのDビットを出力として伝送する、 状態
2: 一テ 符号計数器を増分する;ゼロ柴符号レジスタ: 入力が尽きるまでステップ5を繰返す。 第4図を続けて参照すると、以下のものが第4図の圧縮
器の状態機械記述語である。 状態0: 「待ち状態」各データ・ブロックの始めにお
いて、 ゼロ趣初期設定計数器 ゼ唄≧符号レジスタ ゼロ≧符号計数器 データ使用可能信号を待つ、状態1へ 行く。 「RAMを初期設定する」 lク ゼロ餠RAMを1=込む 初期設定計数器に+1を加える 初期設定計数かく2°ならば:状態1 を繰返す、 そうでなければ状態2へ行く。 「人力文字を読出す」 どのデータも使用できなければ: 符号レジスターゼロの場合 符号レジスタのDビットを出力と して伝送する 状態0へ出ろ 状態5へ行く。 状態5= 「最初のテーブル探索」 最初のハツシュ(符号レジスタ、文 −り 字)≧RA MアトI/ス RAMを読出す ストリング符号(RA114)−ゼロならば=(空サイ
ト) 状態5へ行く 接頭部符号(RAM)−符号レジス タならば(ストリングが見出される) ストリング符号(RA M )鱗号 レジスタ 状態2へ行く そうでなければ状態1↓へ行く。 状態Il:「テーブル探索を繰返す」 次のハツシュ(符号レジスタ、文字) −づr 遅RAMアドレス RAMを読出す ストリング符号(RAM)=ゼロな らば:状態5へ行く。 接頭部符号(RAM)−符号レジス タならば: ストリング符号(RA M )会符号 レジスタ、状態2へ行く 最終ハツシュならば: 状態6へ行く そうでなければ、状態ヰを繰返す 状態5; 「新ストリング・エントリー」符号レジスタ
のDビットを出力とし て伝送する 符号計数器く2°−1ならば 符号計数器へ+1を加える 符号レジスターゼロならば Bビット文字を出力として伝送す る 状態2へ行く 符号レジスター非ゼロなラバ、 一タ ゼロ遅符号レジスタ 状態うへ行く 状態6: 「ストリング終結」 符号レジスタのDピットを出力とし て伝送する 符号計数器く2°−1ならば: 符号割数器に+1を加える 符号レジスターゼロならば: Bピット文字を出力として伝送す る 状態2へ行く 符号レジスター非ゼロならば ゼロ無符号レジヌタ 状態ラヘ行く。 上に与えられた状態機械記述語に関する第4図の圧縮器
の動作のさらに詳しい説明を次に行う。 〔O〕 待ち状態、 1プaツクの入力文字を待ってい
る間、第4図の圧縮器は、この状態にある。 「待ち状態」の間、制御装置115は、初期設定計数器
l111、符号番号レジスター19及び右号計数器12
1をゼロにリセットする。入力データを供給する外部信
号源からのリード112の上のデータ使用可能信号は、
入力データが使用可能であるときを指示するために用い
られる。データ使用可能になると、リード112の上の
データ使用可能信号は、制御装置11′5に「初期設定
状態」に入るように合図する。 〔1〕初期設定状態、 ランダムアクセス記憶装置RA
M 131の内容は、空であるように初期設定される。 この実施例における全記号は、ゼロとして選ばれる。従
って、RAM 151の初期設定は、すべての記憶場所
にゼロを挿入することによって達成される。ストリング
符号記述項だけがゼロでなければならないが、接頭部符
号値は、同時に、実現の便宜上、ゼロにセットされるこ
とがわかる。この初期設定は、Cビット初期セット計数
器141の中の値をバス11)2を経てRA Mアドレ
ス・レジスタ130にゲートすることによって記憶サイ
クルを繰返して達成される。RAM131への入力は、
符号番号レジスタ11つからバス155を経て与えられ
るとともに5符号計数器121からバス132を経ても
与えられる。レジスタ119及び計数器121の両方が
「初期設定状態」の間ゼロになっている。RAM151
は、RAMアドレス・レジスタ130によって指定され
た記憶場所にゼロ入力データを書込むように制御される
。初期設定計数器1111は、その現在の内容を1だけ
増分することによって数え上げるように指令される。こ
の一連の事象は、各記憶場所ごとに1回、計2 回繰返
される。2 のそのような計数ののちに、初期設定計数
器1111は、2゜計数が起ったことを知らせろオーパ
フローオたはキャリアウド信号を制御装置113へり一
ド11)3を経て与える。次に制御装置11うは、第4
図の圧縮器を「入力文字読出し状態」へ進める。 〔2〕 入力文字読出し状態、 第4図の圧縮器が新し
い文字に対して用意が整うと常に、この状態に入る。符
号番号レジスタ11つにある値は、現在のストリングの
中で既に遭遇した文字を識別する。レジスタ119の中
のゼロの値が新ストリングの始端を示す。一つの文字信
号が入力文字バス110かも文字レジスタ116に入れ
られる前に、リード112の上のデータ使用可能信号が
検査される。データ使用可能信号がどのデータも使用で
きないことを示す場合、入力データ・ブロックの終りに
達したことになる。その状況に訃いて、符号番号レジス
タ11つの中のどの非ゼロ値をも圧縮データ・ブロック
を完成するように圧縮器によって伝送しなければならな
い。従って符号番号レジスタ119の内容は、比較器1
’51tにおいてゼロと比較される。レジスタ11つの
内容がゼロでなければ、比較器154は、制御装置11
5にリード1う9を経て信号を与えて、制御装置115
が符号番号レジスタ119の内容をソフト回路網11g
にバス120を経てゲートする。符号大きさ回路12う
は、符号計数器121からのDに対する値を定めて符号
値のDビットをシフトアウトするようにシフト回路網1
18を制御する。このデータが出力されてし1つだとき
、制御装置115は、それ以上の入力データを待つため
に「待ち状態」に戻るように第4図の圧縮器を制御する
。 リード112の上のデータ使用可能信号によって、それ
以上の入力データが使用可能であれば、バス110から
一つの文字が文字レジスタ116に読み込まれ、文字を
受取ったことの知らせを与える文字ストローブ信号を外
部装置へのり−ド115の上に与える。次に、制御装置
115は、[最初のテーブル探索状態]に入るように第
4図の圧縮器を制御する。 り116の中の文字によって拡張された符号番号レジス
タ11つの中の値によって識別されたストリングから成
るポテンシャル・ストリングを、次にそれがストリング
テーブル内に現れるかどうかを決めるために探索する。 レジスタ119からの符号信号及びレジスタ116から
の文字信号は、その組合わせに対するハツシュ・アドレ
スを発生するハツシュ開数回路127へそれぞれバス1
25及び126を経てゲートされる。Cビットアドレス
は、バス12F3を経てRAMアドレスレジスタ1’5
0ヘゲートされ、RAMアドレスレジスタ130はアド
レス指定された記憶場所でRAM1う1を呼出す。RA
Ml11は、呼出された記憶場所の内容を読み出して、
バス155に接頭部符号値をそしてバス156にストリ
ング符号値を与えるように制御されろ。バス156に結
果とし ゛て生ずるス) IJング符号値がゼロ検出器
1′57によってゼロであると決められると、その記憶
場所は空であって、それは拡張ストリングがそのストリ
ング・テーブルにないことを意味する。その状況におい
て、現在のストリングの処理が決定されて、圧縮器は、
そのテーブルを更新して出力を発生するために「新スト
リング・エントリー状態」に仄るように制御される。 しかしバス136の上のストリング符号値がゼロでなけ
れば、バス1う5の上の接頭部符号値は、比較器134
によってレジスタ11つの中の符号値と比較される。そ
れらの値が等しければ、拡張ストリングは、そのテーブ
ル内に存在して拡張ストリングが新ベースストリングに
なる。これは、バス156に現れる現在のストリングの
ストリング符号を符号番号レジスタ11つにロードする
ことによって行われる。次に、次の文字が「入力文字読
出し状態」に入ることによって取出される。 バス135の土の接頭部符号が符号レジスタ119の中
の値に一致しないで、かつバス1つ6の上のストリング
符号値がゼロでない場合、テーブル探索を続ける。継続
されたテーブル探索は、「テーブル探索繰返し状態」に
入るように圧縮器を制御することによって行われる。 〔4〕 テーブル探索繰返し状態、「最初のテーブル探
索状態」において、適当な占有データも全記憶場所もハ
ツシュ関数回路127によって与えられた最初のハツシ
ュ・アドレスにないとき、相次ぐハツシュアドレスがR
AM151をアドレス指定するために与えられる。従っ
て各後続ストリング・テーブル探索は、ハツシュ開数回
路127からの次のノ・ツシュ値をバス128を経てR
AMアドレス・レジスタ130に転送して、代りの探索
サイトに訃いてI(A M151をアドレス指定するこ
とによって実行される。RAM151はアドレス指定さ
れたサイトにおける内容を読み出して、その記憶場所に
記憶されたス) IJング符号及び接頭部符号をそれぞ
れバス136及び135の上にカえるように制御される
。本質的には、「最初のテーブル探索状態」におけると
同じ試験が探索されたストリングが見出されたかどうが
、または全記憶場所に遭遇したかどうかを決めるために
行われる。バス136の上のストリング符号が検出器1
37によってゼロであると検出されれば、その記憶場所
が空であって、「新ストリング・エントリー状態」に入
る。 バス136の上のストリング符号がゼロでなく、カッハ
ス135の上の接頭部符号がレジスタ119からの現在
の符号値に、比較器114によって決められるように、
一致すれば、そのストリングが見出されてしまっておシ
、バス136の上(1)新ストリング符号値が符号番号
レジスタ11つに入れられる。上記の条件のどちらも起
らなければ、現在のストリングに対する探索は、この「
テーブル探索繰返し状態」に再び入ることによって続け
られる。しかし、ハツシュ関数回路127がらのリード
129の上の信号によって表わされるようにN個の・・
ツシュアドレスすべてを利用した場合、そのストリング
は、そのストリング・テーブル内にないと定められて、
そのテーブル内のどのスペースもそれを挿入しない。N
個のノ・ツシュ・アドレスが試みられて成功しなかった
とき、「ストリング終結状態」に入る。 〔5〕 新ストリング・エントリー状態、 一つのスト
リングの処理はそのヌ) IJソングの拡張がストリン
グ・テーブルに見出されないが、空記憶場所に遭遇した
とき終シにされるOこれが起ると、圧縮符号出力信号及
び拡張ストリングが潜在的ならとの符号化のために、ス
トリング・テーブルに入れられるので、前に認識された
ストリング符号1言号が伝送される。従って、レジスタ
11つの中の前に認識されたストリング符号信号は、ノ
くス120を介して出力シフト回路網118へ転送され
ろ。シフト回路網118は、出力リード111の上に出
力符号のDピットを与える(ここでDは符号計数器12
1の中の値に従って符号大きさ回路123によって決め
られる)。 出力がリード111に発送されたのち、検出器122は
計数器121のオール1の状態によって示される値2°
−1に対して符号計数器121を試験する。計数器12
1がオール1を含まない場合、計数器121の中の値は
、制御装置115からの「計数」指令信号の制御のもと
に1だけ増分される。なお、検出器122が符号引数器
121のオール1の状態を検出しない場合、新ストリン
グが前の状態で空であると決定されたばかりのアドレス
においてストリング・テーブルの中に入れられる。これ
はRAMアドレスレジスタ150の中のアドレスをその
前の値で不変に維持し、符号レジスタ11つからのバス
153の上の接頭部符号及び符号計数器121によって
割当てられたばかシのバス152の上のストリング符号
をRA M 131の中のアドレス指定された記憶場所
の接頭部符号欄及びストリング符号欄にそれぞれ書込む
ようにRAM151を制御することによって達成される
。 そのあとで、比較器13.11は、最後に伝送された符
号がゼロであったかどうかを決めるために符号番号レジ
スタ11つを試験する。最後に伝送された信号がゼロで
あった場合、これはス) IJソングテーブル内に対応
する文字値のなかった1文字のストリングを意味した。 従ってその文字値は圧縮層出力として伝送されなければ
ならない。従って、文字レジスタ116からのBビット
値は、こんどは、すべてのBビットを出力として直列に
伝送するように制御されているシフト回路網118にノ
くス11了を介して転送される。次に、新ストリングを
開始するために「入力文字読出し状態」に入る0 しかし、符号番号レジスタ119が非ゼロ値を含んでい
れば、文字レジスタ116の中の現在の文字は伝送され
ないで、次のストリングの最初の文字として用いられる
。従って、符号レジスタ11っは、新ストリングを指示
するためにゼロに払われ、「最初のテーブル探索状態」
に入る0〔6〕 ストリング終結状態、 この状態は、
空記憶場所に遭遇しなかったのでス) IJソングテー
ブル内でエントリーが全く行われないのを除いて「新ス
トリング・エントリー状態」と同一である。 しかし「新ストリング・エントリー状態」の前述のアク
ションのすべては、RAM131の中への「書込み」動
作以外は行われる。符号計数器121を増分すると、こ
のストリングがテーブルに入れられないけれども、スト
リング番号が新しい拡張ストリングに割当てられる。そ
のストリングのためのスペースが見出されなかったので
、エントリーが起らず、従って符号化されたストリング
をあとの符号化に使用できない。テーブルからのこの削
除は、システムの圧縮有効性を小さくする可能性がある
が、正しくない動作を生じない。 次に第5図を参照すると、第4図の圧縮器からの圧縮符
号信号に対応するデータ文字列を回復する復元器が示さ
れている。第5図の復元器においては、その復元器によ
って回復されるバイト・ストリングの順序を逆にするの
にスタック機構が用いられる。このスタックは、各hB
ビットの巾の1組のレジスタを含む通常の機構である。 このスタックへのアクセスは、耽出し及び書込み能力を
与えられている唯一のレジスタである先頭レジスタを通
して行われる。このスタックは、スタック内の各レジス
タを次の下のレジスタに複写する「ブツシュ」能力をも
っている。このスタックは捷だ、スタック内の各レジス
タを次の上のレジスタに複写する「ボッグ」能力をもも
っている。説明を簡明にするために、第5図の復元器実
施例(は、スタック内の正しい記述項の数を記録する独
立のスタック計数器を用いて示されている。スタックの
標準の実現装置においては、スタック割数器は、スタッ
ク機構に一体化されていることが多い。 第5図の復元器において、ストリング・テーブルは、2
°の記憶場所を含み、各記憶場所は、C十Bビットを含
んでいる。各ストリング符号に対応する記憶場所は、接
頭部ストリングに対する符号とそのストリングに対する
拡張文字とを含んでいる。その記憶場所は、そのス) 
IJソング割当てられたストリング符号によってアドレ
ス指定される。第5図の復元器のストリング・テーブル
は、それの記憶場所がどれもそれが書込まれる前に呼出
されないので、初期設定されない。 第5図の復元器は、リード150の上に第4図の圧縮器
によって発生されたビット直列圧縮符号信号を受けて回
復されたデータ文字信号の対応するストリングをバス1
51の上に与える。ビット直列圧縮符号信号は、外部装
置からり−ド150の上に与えられる。この外部装置は
また、圧縮符号信号がリード150に加えるための外部
装置から使用できるときは常に、リード152の上にデ
ータ使用可能信号を与える。リード152の上のデータ
使用可能信号は、圧縮器制御装置155に加えられる。 制御装置155は、第5図の復元器のすべてのブロック
に制御信号をリード154を介して与える。復元器制御
装置153は、・第5図の復元器を以下に詳細に説明す
るようにしてそれの制御状態を通して順序づける。バス
151の上で出力文字が使用できるとき、制御装置15
3は出力データ・ヌトロープ信号を外部装置へリード1
55を通して与える。 第5図の復元器は、ビット直列圧縮符号信号をリード1
50・を通して受けて、これらの信号をCビット符号レ
ジスタ157ヘバス158を経て与えるシフト回路網1
56を備えている。シフト回路網156は、符号大きさ
回路159によって制御されてレジスタ157ヘパス1
5gを経てDビットを与える(ここでDはC以下である
)。符号大きさ回路159によって制御される符号の大
きさは、Cビット符号計数器160によって決められる
。シフト回路網156、符号大きさ回路159及び符号
計数器160は、第4図の圧縮器の匹敵する構成要素に
類似の方法で構成され、第4図の圧縮器に関して前述し
たものと同様の機能を行う。 シフト回路網156は、リード150の上に与えられた
Dビット圧縮符号信号をレジスタ157のD個の最下位
ビットに入れる。第5図の復元器の中に存在する既存の
状態と論理的条件とに従って、制御装置153はまた、
第4図の圧縮器によって与えられた単一文字を処理する
ためにスタック161の先頭にバス162を経てBビッ
トを与えるようにシフト回路網156を制御する。シフ
ト回路網156の単一文字を処理するための制御は、第
4図に関して上述したものと同様の方法で行われてもよ
い。 圧縮符号信号を処理するのに先だって、符号計数器16
0は、それに与えられるゼロの値をもつ信号を介してゼ
ロにセットされる。計数器160はまた、制御装置15
3からの計数指令信号によって制御されて、その中に現
存する計数を1だけ増分するようにできる0符号割数器
160はまた、符号計数器160の中の計数が値2−1
に達したときを制御装置15うにライン16IIを経て
知らせる出力を検出器16うに与える。この値は、Cビ
ット計数器160がオール1の状態になったとき、計数
器160によって達成される。符号計数器160は、第
4図の圧縮器の符号計数器121に関して説明したのと
同様な方法で昇順にストリング符号記号信号を割当てる
。これらのス) IJング符号信号は、RAMアドレス
・レジスタ165にバス166を経て加えられる。 符号レジスタ157は、第5図の復元器の現存する状態
とその中に存在する論理諸条件とに従ってそれに加わる
ゼロの値をもつ信号を介して制御装置15うの制御を受
けてゼロにリセットできる。 符号計数器160の出力及び符号レジスタ157の出力
は、比較器16了への入力として加えられる。あとで説
明する理由によシ、比較器167は、符号計数器160
の出力が符号レジスタ157の出力よシ小さいとき及び
符号計数器出力が符号レジスタ出力以上であるときを制
御装置15′5にリード168を介して知らせる。あと
で説明する諸条件のもとで、符号レジスタ157は、そ
の内容をRAMアドレス・レジスタ165ヘバス171
を介して加えるように制御できると共に、丑だ、あとの
ストリング・テーブル更新のための符号信号を保存する
ためにその内容を第2の符号レジスタ1了2へバス17
うを介して転送するように制御できる。 第5図の復元器は、さらにあとで説明する諸条件のもと
で、符号レジスタ172の内容がゼロであるときを制御
装置15うにリード175を経て知らせるゼロ検出器1
711を備えている。制御装置155はまたその内容を
R’AMアドレスレジスタ165ヘバス176を経て与
えるように符号レジスタ172を制御する。 RAMアドレス・レジスタ165にロードされたアドレ
スが復元器ストリング・テーブルを記憶するのに用いら
れるRAM 177を呼出すORAM177は2°の記
憶場所を含み、各記憶場所はC十Bビットの巾である。 各ストリングは、そのストリングへ割当てられた符号に
よってアドレス指定された記憶場所においてそのCピッ
ド接頭部符号及びそのBビット拡張文字を記憶すること
によ〜 ってRA M 177の中に記憶される。各符号値は5
符号計数器160によって昇順に復元器ストリング・テ
ーブルに入れられた各ストリングに割当てられる。 RAM177は、制御装置155から「読出し」指令及
び「書込み」指令を受けてRAM 17 了り「読出し
」及び「書込み」機能を制御する。RAM177は、符
号レジスタ172からの符号値をバス178を経て受け
スタック161の先頭から文字値をバス179を経て受
けて、RAMアドレスレジスタ165によってアドレス
指定されたRAM記憶場所の接頭部欄及び文字欄にそれ
ぞれエントリーする。これらの値は、制御装置15うか
らの「書込み」指令に応じてそれぞれの欄に書込まれる
。 制御装置155はまた、RAMアドレスレジスタ165
によってアドレス指定されたR A M記憶場所の接頭
部符号欄に記憶された接頭部符号の値を「読出し」指令
に応じてバスigoに与えるようにRAM177を制御
する。バス11?0の上のこの符号直は、RAMアドレ
ス・レジスタ165へ加えられると共に、ゼロ検出器1
81へも加えられる。検出器181は、RAM出力18
0にある接頭部符号がゼロに等しいか等しくないかを定
め、かつ制御装置153への−っの信号をり〜ド182
を経て適宜に与える。 制御装置153は捷た、文字欄からの文字値をバス18
うを経てスタック161の先頭に与えてその中にエント
リするようにRAM177を制御する。文字の値は、R
A Mアドレス・レジスタ165によってアドレス指定
されたRAM記憶場所の文字欄から「読出し」指令に応
じてバス183の上に与えられる。RA M出力180
及び18うにある値は、第5図の復元器の現存の状態及
び論理的諸条件とに従って選択的に与えられる。 スタック161は、制御装置15うがらの「ブツシュ」
及び「ポツプ」信号の制御のもとにブツシュまたはポツ
プすることができる。スタック16ユに記憶された文字
の数の計数を維持するためにスタック計数器1811が
備えられている。制御装置15うの制御を受けて、スタ
ック計数器1811は、それに加わるゼロの値になった
信号を介してゼロにセットできろ。計数器1811の中
の現存の計数を制御装置15うの制御のもとにそれに加
わるADD+1及びADD−1信号によってそれぞれ1
だけ増分または減分できる。ゼロ検出器185がスタッ
ク計数器184の出力を受け、スタック計数器18Il
にある値がゼロに達するとき制御装置155ヘリード1
86を介して信号を与える。 第5図の復元器の基本動作は、次のように要約される。 1 最初の記号、圧縮データの最初のBビットを読出し
、 出力へ送る:RAMの記憶場所1に初期ストゼロであれ
ば、烙らにB個の人力ビット斜出カスタンクを一読出す
ニステップ4へ行く5 符号ンジスタ≧RAMアドレス
; RAMを読出す文字(RAM)≧出力スタック 接頭部符号がゼロでなければ、ステップラを繰返す; そうでなければステップ4へ行く −づン 出力スタックから文字を取って出力へ置<、LIFO:
符号計数器を増分する;ステップ2へ行く。 第5図を続けて参照すると、以下のものが、第5図の復
元器の状態機械記述語である。 状態0: 「待ち状態」 データ使用可能信号を待つ;状態1 へ行く 状態1: 「最初の符号」 符号計数器−ゼロ スタック計数器=ゼロ 符号レジスター−ゼロ と 入力からのBビット趣ヌタックの先 頭起読出す;出力データ・ストロー ブ 状態2へ行く 状1m2: rゼロ・ストリング状態」符号レジスタ2
−符号レジスター 符号計数器へ+1を加える 符号計数器≧RAMアドレス・レジ スタ RA M−符号レジスタ2、スタック の先頭を書込む。 状態3= 「新コード」 てり 符号レジスター−レジスタ2 どのデータも使用可能でなければ: 状態0へ行く を D入カビット趣符号レジスター(下 位)Dビット絆読出す 状態 入カシ♂タックの先頭す仕ttか 神読出す;出力データ・ストロ ーブ 符号割数器−2°−1ならば、状態 うへ行く 符号計数器く2°−1ならば、状態 7へ行く 符号レジスター〉符号計数器〔異常 な場合〕、 状態 スタック計数に1を加えるニスタッ クをブツシュ 〔複製文字がすでに存在する〕 符号レジスタ〉RA Mアドレス 状態4へ行く 符号レジスタ171−0及びく符号計数器を工k〔正常
な場合〕: 状態ヰへ行く 11: r次の文字」 RAMを読出す 「ブツシュ」、スタック計数器を増 分する 接頭部符号(RA、M)−非0ならば:接頭部符号(R
AM)年RA’Mア ドレス;状態4を繰返す 接頭部符号(RAM)=0ならば: 状態5へ行く 5: 「ストリング・テーブル更新」 符号レジスタ2−0ならば:状態6 へ行く 符号計数器=2°−1ならば・状態 6へ行く その他の場合、符号計数器に+1 を加える 符号計数器≧RA Mアドレス 状態6へ行く 状態6: 「出力を発生」 ポツプ;出力データストローブ スタック計数器−非Oならば:状態 6を繰返す スタック計数器−〇ならば:状態う へ行く 状態子: 「単一文字更新」 符号レジスタ2−非0ならば: 符号計数器に1を加える 符号計数器路FIAMアドレス 符号計数器−2°−1ならば:状 態うへ行く 状態2へ行く 上に与えられた状態機械記述語に関する第5図の復元器
の動作のさらに詳細fx説明を次に行う。
〔0〕 待ち状態、 1ブロツクの圧縮入力符号信号を
待つ間、第5図の復元器は5この状態にある。圧縮入力
符号を供給する外部信号源からのデータ使用可能信号は
、入力データが使用できるときを指示するために用いら
れる。入力符号が使用可能になると、す〜ド152の上
のデータ使用可能信号は、「最初の符号状態」に入るよ
うに制御装置15′5に合図する。 第5図の復元器は、メツセージの最初のストリング符号
を読取る。これは、最初の符号に対してはゼロピットで
ある入力データライン150からのビットを読取る15
6によって行われる。符号計数器160は、ゼロにセッ
トされて、符号回路159にゼロピットの符号大きさD
を確立する。 第4図の圧縮器の動作に従って、一つのデータブロック
の最初の圧縮符号信号はゼロであって、あからさまには
伝送されない。従って、符号レジスタ157は、ゼロに
セットされ、最初の符号を受けたことを示す。 どのゼロ符号に関しても、この最初の符号は5Bビット
文字信号を伴っている○従って、制御装置15うは、ス
タック1ら1の先頭に記憶するために経路162を経て
伝送されろ最初のBビットを読取るようにシフト回路網
156を制御する。 スタック161の先頭にある文字は、出力文字ノ(ス1
50を通して使用可能である。制御装置153は、ライ
ン155を通して出力ストロープ信号を伝送することに
よってこの出力文字の使用可能なことを知らせる。この
初めの文字が伝送されるので、それはあとの伝送に備え
てスタック161の中に保持されない。従って、スタッ
ク計数器184は、ゼロ値を含むように初期設定される
。初期符号を処理し終ると、制御装置15′5は、この
最初のストリングを2トリング・テーブルに入れるため
に「ゼロストリング更新状態」に入るように第5図の復
元器を制御する。 〔2〕 ゼロストリング更新状態、 ゼロのストリング
符号を受取ると、そのゼロストリング符号にすぐに続く
1文字ストリングに対するエントリが割当てられるべき
次の符号番号でス) IJソングテーブル内に置かれる
。従って、符号計数器160は、1だけ増分されて結果
として生ずる結果は、RA IAアドレス・レジスタ1
65にバス166を介して伝送される。この状況におい
て、常にゼロである符号レジスタ157の中の値は、符
号レジスタ172へバス175を介して移される。燻1
77は、次に符号レジスタ172の内容なバス178を
介して新しいストリングの接頭部符号値として「書込む
」ように制御される。この値は、RA、 Mアドレス・
レジスタ165によって指定されたアドレスにある接頭
部符号値に書込域れる。 なお、スタック161の先頭においてバス179を介し
て使用可能な出力文字バス151に出力された最終文字
は、このストリングの拡張文字として’RAM177の
アドレス指定された記憶場所の文字欄に書込まれる。従
2て、この「ゼロストリング更新状態」においては、ゼ
ロの接頭部符号及び受けた最終のBビットの拡張文字が
書込まれ、そのストリングに対する符号によってアドレ
ス指定されたRAMの記憶場所に適当な単一文字ストリ
ングを作る。次に、「新符号状態」に入って次の入力符
号信号を処理する。 〔つ〕 新新符号態、 パースされた文字ス) IJン
グを回復するための処理の始めにおいて、Dビットの新
しい圧縮符号信号がライン150から読取られる。しか
し、始めには、符号レジスタ157における前の符号を
符号レジスタ172ヘバス17うを経て転送して、それ
を次のストリング・テーブル更新に備えて保存する。ラ
イン152の上のデータ使用可能信号は、新符号信号が
使用できるかどうかを決めるために試験される。データ
が使用可能でなければ、現在のデータブロックの終りに
達したことになり、復元器は、その現在の仕事を完了し
た「待ち状態」に戻される。 データが使用可能な場合は、入力の次のDビットが入力
ライン150から符号レジスタ157の下位Dビットに
シフト回路網156及びバス158を介して読込まれる
。Dの値は、符号計数器160の中の現在の値に従って
符号大きさ回路159によって決定される。 この新符号値は、それが追加された新しい文字のついた
ゼロ符号ストリングであるかどうかを決めるためにゼロ
に対して試験される。従って、ゼロ検出器165が制御
装置153にリード170を介して符号レジスタ157
の内容がゼロであるかどうかを知らせる。ゼロが検出さ
れれば、以下のアクションが行われる。入力データの次
のBピットは、シフト回路網156によって入力ライン
150から読出される。そのBビットは、バス162を
経てスタック161の先頭に伝送され、ライン155の
上の出力ストロープは、新しい正しい文字が使用できる
ことを外部装置に知らせるように起動される。次に、検
出器165は、符号計数器160の中の現存する計数が
計数器160のオール1の状態である2°−1に等しい
かどうかを決定する。符号計数器1GOがオール1を含
む場合、RAM 177の中のストリング・テーブルは
、−ばいであって、そこにはそれ以上の更新データを加
えない。現在の入力符号の処理は、そのとき完了してい
て、復元器は、この「新符号状態」に再び入って、次の
圧縮符号信号を処理するように制御される。しかし、符
号計数器160が2°−1より小さい値を含む場合、受
けたばかりの文字は、前に受けた符号信号の拡張として
ストリング・テーブルを更新すると共に当然に新車−文
字ストリングとしてそのストリング・テーブルを更新す
るのに用いられる。第5図の復元器は、この更新を「単
一文字更新状態」に入ることによって行う。 符号レジスタ157がゼロ値を含まなかった場合、その
内容は、比較器167を介して90号割敬器160の中
の既存の計数と比較される。符号レジスタ157が符号
計数器160より大きな値を含む場合、比較器167は
、制御装置153にリード168を介して受取ったばか
りの符号が捷だストリング・テーブルに入れられていな
い前の符号の延長である異常な特殊の場合が起ったこと
を知らせる。この状態において、新符号ス) IJング
の最終文字は、前のストリングの拡張文字に等しく、前
のストリングはまた、新符号ストリングの最初の文字で
あり、新符号ストリングは、前のストリングの始めの文
字でろり、前のストリングは、復号されたばかシでスタ
ック161の先頭にある文字でるる。従って、「ブツシ
ュ」が新ストリングに対してこの文字を保持するために
スタック161において実行され、スタック計数器18
11は、1だけ増分される。そのあとで、現在のストリ
ングに対する接頭部符号である符号レジスタ172の中
の符号信号は、バス176を経てRAMアドレスレジス
タ165に転送され、「次の文字状態」に入ってこのス
トリングの残部の正常な処理を行う。 しかし、符号レジスタ157の中の値がゼロでもなく、
また符号計数器160の中の既存の計数より大きくもな
い場合、符号レジスタ157の中の値は、正常なストリ
ング符号である。この符号は、符号レジスタ157から
の符号値をバス171ヲ経てRAMアドレス・レジスタ
165に転送し、そのストリングの各文字を処理し始め
るために「次の文字状態」に入ることによって処理され
る。 〔イ〕0次の文字状態、 この状態に入ると、RA M
 7ドレス・レジスタ165は、文字の対応するストリ
ングに復元されるべきストリング符号を含んでいる。従
って、ストリング・テーブルRAM177は、レジスタ
165の中の符号値によってアドレス指定された記憶場
所の内容を読取るように制御されて、そのストリングの
ための接頭部ストリング符号及び拡張文字をそれぞれバ
スIF50及び1とうの上に作る。バス1g5の上の拡
張文字は、スタック161の先頭に加えられて押下げら
れ、スタック計数器1811は、1だけ増分される。 バス180の上の接頭部符号は、それがゼロであるかど
うかを決めるためにゼロ検出器181によって試験され
る。その接頭部符号がゼロであれば、ストリング・テー
ブル内のアドレス指定された記憶場所は、現在のストリ
ング内の最終バイトを含み、「更新ストリング・テーブ
ル状態」に入ってスタック161の中に現在あるストリ
ング・データの処理を完了する。その接頭部符号がゼロ
でなければ、接頭部ストリングは、その接頭部符号をバ
スIF!0を通してRAMアドレス・レジスタ165に
転送して、この「次の文字状態」に再び入ることによっ
て処理される一つ以上の文字を含んでいる。 リング符号をその文字の列に復元したのちに、発生した
最終文字は、そのストリング・テーブルを前の符号呟で
更新するための拡張文字として用いられる。しかし、こ
れは二つの状態のないときにのみ起る。ゼロ検出器17
1↓が符号レジスタ172の中の前の符号値がゼロに等
しいことを決定する場合、このストリングの更新は、既
に起ってしまっておシ、直ちに「出力作成状態」に入る
。検出器165が、符号計数器160の中の値が2C−
1に等しいと決定する場合、ストリング・テーブルは、
一杯であって、それ以上の更新はできない。 この場合にはまた、直ちに「出力作成状態」に入る。こ
れらの二つの状態のどちらも起らなければ、更新は、以
下のように行われる。符号計数器160の内容は51だ
け増分され、増分された値は、RA M 7 トレス・
レジスタ1G51Cバス160を経て転送される。RA
M177は、次に割当てられた符号値のサイトであるア
ドレス指定された記憶場所に符号レジスタ172からバ
ス178を経てくる接頭部符号値及びスタック161の
先頭からバス179を経てくる拡張文字を書込むように
制御される。そのあとで、「出力作成状態」に入る。 〔6〕 出力作成状態、 現在のストリングの各文字は
、スタック161の中にいまはあって、過当な出力文字
列を与えるようにバス151を通して後入れ先出しで伝
送される。スタック161は、ポツプ・アップされ、そ
れによって伝送されるべき次の文字は、スタック161
の先頭に置かれて、その結果、外部装置への出力バス1
51を通して使用できる。ライン155の上の出カスト
ローブ信号は、正しい文字が使用できることを知らせる
ために制御装置153によって発せられる。スタック計
数器111tllは、1だけ減分されて、スタック計数
がゼロ検出器185によってゼロに対して試験される。 スタック計数器114の中の計数がゼロでなければ、も
つと多くのデータがスタック内にあって、この「出力作
成状態」に入ってもう一つの文字を与える。しかし、ス
タック計数器111tllO中の計数がゼロの場合、現
在のストリングの文字の伝送は、完了しており、「新符
号状態」に入って次のストリングを始める。 〔7〕 単一文字更新状態、 単一文字を一つの符号ゼ
ロ・ストリングの」二の一つの明白な拡張として受取る
とき、 この文字は、前の符号値に基いたストリング・
テーブル内で新しいストリングを作るための拡張文字と
して使われる。このストリング・テーブル更新は、前の
符号値を含む符号レジスタ172の内容がゼロ検出器1
711によって非ゼロであるとして検出される場合だけ
起る。ゼロ検出器1711が、符号レジスタ172の内
容がゼロであると決定すれば、このストリングテーブル
更新は、実行されない。符号レジスタ」72が非ゼロの
値を含む場合、更新は、符号泪数器160を1だけ増分
し、増分された値をRAMアドレスレジスタ165ヘバ
ス166を経て伝送することによって行われる。RAM
177は、勾号レジスタ172からバス178を経てく
る接頭部ストリング符号及びスタック161の先頭から
バス179を経てくる拡張文字をRAMアドレスレジス
タ165の中の新符号によってアドレス指定された記憶
場所の接頭部符号欄及び文字欄のそれぞれに書込むよう
に制御される。 次に符号計数器160の内容は、計数器160が値2−
1に達したかどうかを決めるために検出器1Gうによっ
て試験される。この値に達した場合、ストリング・テー
ブルは、一杯であって、それ以上の更新は、行われない
。次に「次の符号状襲」に入って次のストリングの処理
を始める。 しかし5計数器160の内容が2−1より小さければ、
 「ゼロストリング更新状態」に入ってストリング・テ
ーブルを受けたばかりの単一文字ストリングで更新する
。 第2〜5図に示した本発明の上述の実施例は、例えば、
離散的デジタル論理構成要素を用いてバー−ドウエアで
実現される。第1〜II表は5本発明によるデータ信号
の圧縮及び復元を行うプログラム記憶式デジタル計算機
にロードするソフトウェアで実現された本発明の1実施
例を示している。 明確にいえば、本発明のプログジム式計算機実施例は、
第2図及び第う図に関して先に述べた本発明の最高性能
実施例をソフトウェアで実現する。 第1〜l1表のプログラム式計算機実施例はFORTR
ANで実現されるので、互換性FORTRAN コンパ
イラを備えた計算機ならどれでも実行できる。圧縮器及
び復元器は、それぞれ入力及び出力データを管理する主
プログラムの中で呼出されるべきサブルーチンとして実
現される。圧縮器と復元器のサブルーチンは、基礎にな
っている計算機のワ〜ドの大きさに関係のない任意の長
さで密につめられた記号の配列について取る動作と置く
動作をそれぞれ行うIB工TSG 及びI B I T
 S Pという名の文字操作サブプログラムを用いる。 IBITS()及びIBITSPサブプログラムは、そ
れぞれ等しい大きさの記号の直線配列の指定された位置
にある選択されたビット長の一つの記号をそれぞれ取っ
たり、置いたりする。丁BITSGは、圧縮器及び復元
器ザブルーチンにおいて用いるための機能ザブプログラ
ムとして実現され、IBITSPは、圧縮器及び復元器
サブルーチンの実行において呼出されるべきサブルーチ
ン・サブプログラムとして実現される。第5表及び第4
表は、それぞれIBITS()及びIBITSPを示す
。これらのザブプログラムは、例として与えられ、等価
なサブプログラムが普通に熟練した計算機プログラマに
よって容易に作られる。 第1表及び第2表にそれぞれ示した圧縮器及び復元器の
サブルーチンは、それぞれCOMP及びDECOMPと
いう名称である。COMPサブルーチンは49ビット−
文字信号のストリングを12ピット符号記号信号に圧縮
し・DECOMPザブルーチンは、12ビット符号記号
信号を9ビツト文字信号のストリングに復元する。例示
したサブルーチンは、′56ビツトワード長を有する計
算機を用いる。これらのサブルーチンは、52ビット計
算機を用いて8ビツト文字で動作するように容易に変換
される。COMP及びDECOMPは、サブルーチンと
して構成されるけれども、それらは当然別々のプログラ
ムとして等価に構成できる可能性のあることがわかる。 FORTRANがこれらのルーチンを実施するために用
いられるが、他の等価なプログラム言語を同じ効果に用
いることができるであろう。 さて、第1表を参照すると、 COM P (IBUF
A。 NA、 IBUFB、 NB )サブルーチンが示され
ているOCOMPサプルーサブルーチンIBUFAに含
まれたNA個の9ビツト文字のブロックについてデータ
圧縮を行う。COMPは、配列IBUFBQ中のN8個
の12ビット記号で構成された圧縮符号を作る。 COMPは、圧縮器ストリング・テーブル憶するだめの
II096整数配列工TABLEを内部的に用いる。従
って、第1表の文11iは、ITABLE配列の寸法を
決める。IT’ABLEO中の各記憶場所は、そのテー
ブル内のアドレスに等しい圧縮符号をもつ遭遇した文字
ストリングに対応する。こツインプリメンテ−ジョンに
おいては、FORTRANがゼロを基準とした配列を支
持しないので、アドレスを作るのに1をその符号に加え
る。一つのストリングを記憶する各テーブル記憶場所は
、そのストリングの接続部の符号を含む。ストリング・
テーブルは、空であるように初期設定される。 ITABLEの空状態は、値512をもつ工FILLと
いう空白記号でテーブルを埋ることによって行われ、値
512は、どのストリングに対しても用いられるもので
はない任意の選択された符号値である。第1表の文15
は、IFILL の量を限定する。従って、IFILL
は、値2 をもっている(この実施例において、Bは、
っである)ことがわかる。第1表の実施例は、文16に
よって1を含むように確立されて、初期設定された内部
文字計数器NCHAを用いる。NCHA計数器は、読出
されるべき次の入力文字のインデックスを与える。第1
表の圧縮器はまた、FORTRAN文17によって定義
されて、1に初期設定される内部出力記号計数器NBを
用いる。記号計数器NBは、発生されるべき次の出力記
号のインデックスを与える。FORTRAN文18及び
19は,11096の記憶場所すべてにIFILL を
挿入することによってすべての空白値を含むようにスト
リング・テーブルを初期設定する。ITABLEの最初
の515記憶場所は、決して呼出されないので、これら
の記憶場所は、初期設定を必要としない。これらの記憶
場所の初期設定は、そうする時間を節約したい場合省略
できる。 最初の文字は、最初の文字1からの9ビツトをIBUF
八から検索する工]3ITSG機能を用いてFORTR
AN文20によって読出される。この入力文字は、文2
0においてその文字の値に等しいそれのあらかじめ割当
てられた単一文字ス) リング符号値に変数NODEN
Oにその値を記憶することによって変換される。変数M
ODENOは、既に読出された文字のどの部分的入力ス
トリングに対してもその符号値を含むように用いられる
。第1表の文16〜20は、1ブロツクのデータを処理
するだめの初」υノ設定及びその過程の開始を完成する
0 第1表の文21は、各折しい入力文字が読出される主処
理ループへの入口を与える。文21は5それへの飛び越
しを行うためのラベル100を備えている。文字インデ
ックス計数器NCHAは、文21で増分される。文22
は、N C H Aが入力パラメータN Aよシ大きい
かどうかを決定し、NCHAがNAを超えていれば、す
べての入力文字は、使い果されたのであって、飛び越し
がデータブロック終了処汐のための文llOへ行われる
。 文14Gは、その飛び越しを行うためのラベルl100
を備えている。 正常の状況においては、新しい文字が使用できるとき、
文23は、NCHA番目の9ビツト文字を入力バッファ
IBUFAからN O W C H Rという名の変数
に読込むためのIBITSG機能サブプログラムを用い
る。文211は.NOWCHRの中の値及びNODEN
Oの中の値、すなわちNOWCHR内の文字によって拡
張されたNODENOの中の符号によって定められるス
トリングのノ1ツシュアドレスLOGを計算するための
前のストリング符号を用いる。文2’llの中で述べら
れたノ・ツシュ関数は、文字の値がビットが逆でないこ
と以外第2図及び第5図に関して上に述べたものと同じ
である0前述のハードウェア実施例においてはそうする
ことが便利であるけれども、ソフトウェアで文字の値を
1ビツトずつ逆にするのは不便である。なお、文211
のハツシュ関数は、FORTRANがゼロペースの配列
を支持しないで、LOCの値がアドレスを作るのにそれ
に1を加えられている点でノ・−ドウエア実施例におい
て用いられたノ・ツシュ関数と異なる○この最初のハツ
シュアドレスを発生しJこのち、計数器の変数Nが.L
OCの中の値がテ−プルの中のN個の可能な探索サイト
の最初のものであると−うことを示す文25によって限
定されて、1に初期設定される。本実施例(Cおいては
、Nは7として選択される。 第1表の文26は、計数変数としてNを用いるテーブル
探索ループへの入口を与える。文26は、それへ飛び越
しを行うことのできるようにラベル120を備えている
。文26は、LOCが適法な値を含むかどうかを決定す
る。従って、文26は、LOCが515より大きいかど
うかを決める。記号符号ゼロないし511は5単一文字
のストリングにあらかじめ割当てられ、512は5空白
記号に対して逆にされ、かつすべての符号は、上述のF
ORTRAN規則のために1だけ増やされる。 LOCが適法な新しいアドレスを含まなければ、飛び越
しが文う1へ行われて、もう一つの試みを発生する。文
31は、飛び越しを行うためのラベル180を備えてい
る。正常には、LOC内の値は、適法なアドレスであっ
て、その記憶場所におけるストリング・テーブルの内容
は、文27における既存の文字ス) l)ング句号に対
して検査される。アドレス指定されたストリング記憶場
所の内容が既存のストリング信号に等しくなければ、探
索されたス) IJングは、前にこの符号値を割当てら
れなかったので文30への飛び越しがその探索を続ける
ために行われる。文30は、転送を行うためのラベル1
30を備えている。しかし、文27で試験された符号値
が等しければ、現在の文字によって拡張された前のスト
リングは、ストリング・テーブルにL OC−1に等し
い符号値と一緒に既に記憶された受入れられたストリン
グである。文28は、この新しいストリングを前のスト
リングに符号LOC−1を変数N0DENOにおいて記
憶することによって変換する。次に、文29は、もう一
つの入力文字を読出して、ストリング拡張処理を繰返す
ために文21に戻る転送を行う。 文27に訃いて、前の工TABLE呼出しが失敗に終る
と、飛び越しが文30に割当てられたラベル130を介
して文50に行われる。文5oは、記憶場所LOCが空
であるかどうかそれの内容の初期値IFLILLに対す
る相等を試験することによって決める。その記憶場所が
空であれば、探索されたストリングは、そのテーブルの
中に存在しないと定められて、そのテーブルを更新し、
現在のストリングを終了にするために飛び越しが文35
へ行われる。文う5への飛び越しは、その文に割当てら
れたラベル200によって行われる。しかし、文27及
び30によって行われた試験が共に失敗に終れば、もう
一つの記憶場所が5調べられた最後の記憶場所が一つの
ストリングまたは空記憶場所を発見するための7番目の
試みを構成するのでなければ、検査されなければならな
い。従って、文51は、探索計数Nを1だけ増分し、文
う2は、この次の探索計数をそれが7を越しているかど
うかを決めるために試験する。Nがこんどは7を越して
いれば、それ以上の探索が試みられず、そのストリング
は、そのテーブルの中に存在しないど定められていて文
う6への転送が行われる。 ラベル500は、飛び越しを行うために文う6に割当て
られている。しかし、Nがまだ7に等しくなければ、探
索されたス)IJングに対する探索は、新しいハツシュ
・アドレスにおいて続けられる。 文′55は、試験されたばかシのノード番号へ加えられ
る接頭部ストリング・ノード番号から新しいハツシュ・
アドレスを計算する。テーブル長ヲ保つために加算が1
1096を法として行われる。この新しいノード番号は
、またFORTRAN適法記憶場所LOCを与えるため
に1だけ増やされる。 新しいハツシュ・アドレスが計算されると、文54は、
新しいアドレスに関する探索手順を行うために文26へ
の転送をラベル120を介して行う。 文55は、空記憶場所に遭遇したときに文50が転送を
行った転送先のプログラム内の状態を切分ける。ストリ
ング・テーブルは、こんどは、空記憶場所において、観
察されたばかりであるが壕だテーブルの中に入っていな
い拡張ストリングを入れることによって更新される。文
35は、NDDlliNOの中に記憶された接頭部ノー
ド番号をその記憶場所のアドレスを新しいストリングの
圧縮符号記号信号としての割当てを行う空記憶場所に書
込むことによって更新を行う。そのあとで、ストリング
の処理の終りが文56〜38によって行われる。 文36は、:[BITSPを呼出してN0DENOの中
の現在の)−ド番号を出力バッファIBUFHにそのバ
ッファ内のNB番目の12ビツト記憶場所におる12ビ
ット符号として置く。次に、文57は、伝送されたばか
りのストリングの中に含まれていなかった最後に受けた
入力文字を符号番号に変換して、次のス) IJング探
索の始めを与える。その文字信号は、N0WCHHの中
の値をN OD E N Oに転送することによって符
号信号になる。次に、文う8は5出力記号計数NBを1
だけ増分して、開始したばかりのストリングに出力1を
与え、交うっは、ラベル100を介して文21に戻り転
送し・もう一つ入力文字信号を取出して、主反復ループ
を行う。 文llOは、現在のデータ・ブロック内のすべての入力
文字を処理したプログラムの中の状態を切分ける。従っ
て、文llOは、丁BITsPを呼出して最後の部分ス
トリングを示すN0DENO内の最後の12ピット符号
値を出力バッファIBUFBのNB番目の位置に置く。 次に、文111は、入カバソファIBUFA内に含まれ
たNA文字信号のデータ・ブロックを圧縮するために第
1表のサブルーチンCOlvf Pを呼出した主プログ
ラムに制御を戻す0 第2表を参照すると、バッファIBUFBの中に受け入
れられたN8個の12ビット圧縮符号記号信号のブロッ
クについて復元を行い、結果として生じた回復された9
ビツトの文字信号を出力バッファIBUFAに詰めてJ
結果として生じた文字の数の計数N Aを戻す復元サブ
ルーチンDECOMP(IBUFB、NB、 よりUF
A、NA)が示されている。 第2表の復元器DECOMPは、それのストリング・テ
ーブルを文10の中に寸法を与えられた11096ワ一
ド配列ITABLEの中に記憶する。 文11は、第2表の実施例に対して9にセットされたデ
ータ定数NBITSAを用いて出力文字信号の中のビッ
トの数をパラメータ化する。文12は、読出されるべき
次の入力記号信号を示す入力圧縮記号計数変数MCHB
を確定する。文12はまた、N CHBを1に初期設定
する。文15は、出力バッファよりUFAの中に置かれ
ていた文字の数を示す出力文字計数変数NAを確定する
。文字13は捷だ、出力バッファの中に置かれるべき最
初の出力文字を加えるときに、NAを1に初期設定する
。これは、文1gにおいてあとで説明するような方法で
起る。ITABLEの中の各ストリング・テーブル記憶
場所は、三つの整数の値をもつ欄で編成される。各スト
リング・テーブルの記憶場所は、記憶場所の内容を経て
遭遇した文字のストリングをピント1〜12にある接頭
部ストリング視号、ビット15〜211にある接頭部ス
トリングの長さ及びビット25〜56にあるストリング
拡張文字を介して記憶する。本実施例においては、この
アトVスは、第1表に関して上に検討した理由のために
符号信号に1を加えたものである。 文11I及び15は、すべての記憶場所が空であるとい
うことを示すようにストリング・テーブルITABLE
を初期設定する。オールゼロは、プログラムする便宜上
、空状態を指示するように任意に選択される。オールゼ
ロは、適合ス) IJソング記憶するときに決して起り
得ない不法構成である。 適合ストリングがゼロの接頭部ね号をもつとき、それは
1の接頭部ス)IJング長さをもつもので、オールゼロ
構成は、この初ユリ]設定の手順の間ストリング・テー
ブル内になされ得るだけである。 初期処理が文16において最初の入力符号記号を読取っ
て、最も最近読取られた符号記号を含むために用いられ
る変数N0COD’Eの中にこのノード符号を記憶する
ことによって始められる。文16は、最初の入力符号記
号の読取りを第う表のよりITSG機能サブプログラム
を用いてIBUFBの中のICH8番目の12ビット項
目を入力することによって行う。文17は、最も最近発
生された文字を含むために用いられる変数ICHA、R
を定める。文16において、N0CODEの中に置かれ
たばかりの値が単一文字符号であるとわかっているので
、それは、文17において工CHA、Rを満たすために
直ちに用いられる。文IF!は、出力バッファよりUF
Aの中のこの文字をNBITSAの大きさの順目のNA
番目のサイトに置く。文18は、第4表のIBITSP
サブルーチンを呼出すことによってこの文字出力動作を
行う。そのあとで、ストリング・テーブルのこのストリ
ングの拡張によるあとでの更新に備えて、文1つは、変
数N0DOLDの中iCN0CODEの中のストリング
符号を保存し、文20は、 LFVOLDの中のストリ
ングの長さをこの最初のストリングに対する長さの既知
の値と一緒に保存する0復元処理を初期設定このように
したとき、反復に文21で入る。文21は、それへのあ
とでの転送を行うために100のラベルを備えている0 主ループの始めにおいて、文21は、記号計数NCHB
を1だけ増分し、次に、文22は、入力記号計数NCH
Bが処理されるべき記号の番号NBを超えるかどうかを
決めるための試験を行うO現存の記号計数N CI(B
が復元されるべき使用可能な記号の番号より太きければ
、その過程は完了であって、DECOMPがサブルーチ
ン・リターン文57に転送することによって終了になる
。文57は・その転送を行うためにラベル510を備え
ている。しかし、復元されるべきそれ以上の入力データ
が使用可能なとき、文23は、IBUFBのNCHB番
目の12ビット位置から次の使用可能な記号を読取る。 文2うは、第5表のI B I TSG機能サブプログ
ラムを用いてこの動作を行う。文23は、読取シ符号記
号を処理されている現在の部分ストリングの符号を保持
するために用いられる変数であるN0DENOの中にお
く、文21Iil″l:また、入力符号記号を最も最近
の入力符号を入れておくのに用いられるN0CODEに
置く。文25は、N0DENOの中の符号値を試験して
、それが512を超えるかどうかを決め、512を超え
れば、そのプログラムは、文28に移って、正常な復元
過程を初める。値512は、第2図5第5図及び第1表
に関して前に検討した理由によって2Bに等しい。文2
gは、それへの転送を行うためにラベル120を割当て
られている。しかし1文25の試験がMODENOの中
の新しい記号が512よシ小さい値をもっていると決定
すれば、その符号は、直接に解釈されるあらかじめ割当
てられた符号値の単一文字ストリングを表す。この単一
文字ストリングは、接頭部ストリングの長さがゼロであ
る。 従って文26は、処理されているストリングの接頭部ス
トリング長さを保持するために作業用変数LEVELを
確定する、この場合にLEVELは、ゼロにセットされ
る。そのめとで、文27は、すべての単一文字ストリン
グの処理が達成される場所である文」0にプログラムを
転送する。文llOはそれへの転送を行うためのラベル
210を備えている。 文25がラベル120を介して文2gへの転送を行うと
、新しい符号値が多重文字ストリングを表すとわかって
いるN0DENOに常駐している。 文2とは、現在のストリングがいままでのところストリ
ング・テーブルに入っていない直前のストリングの拡張
である異常な特殊な状況に対して試験する。この試験は
、このストリング符号値を前に定めたことがあるかどう
かを決定するために新しい符号のストリング・テーブル
記憶場所の内容を調べることによって行われる。実際に
は、テーブルは、上に検討したF CI RT RAN
の必要条件を満たすためにN0DENO+1のところに
アドレス指定される。テーブル・エントリがゼロでなけ
れば、そのストリングは、前に定められたのでろって、
転送が文ううに行われて正常の処理を続ける。 ラベル150は、その転送を行うために文う5に割当て
られる。しかし、文28の試験がテーブル・エントリが
空であることを決定すれば、現在の符号は、直前のスト
リングの拡張であるとわかる。 従って、現在のストリングの接頭部ストリング長さは、
前のストリング長さに等しb0従って、文2つは、LE
VOLDの中の前のストリング長さを接頭部ストリング
長さ変数LEVELの中に置く。 この特殊な場合には、与えられるべき最初の文字は、こ
の現在のストリングの親文字である直前のストリングの
拡張文字であるとわかり、その親文字は、直前のストリ
ングの親文字に等しく、その親文字はまた変数ICHA
Rに常駐する文字である。 従って、文30は、第4表のIBITSPサブル−チン
を呼出してI CHARにある既存の値を新しいストリ
ングの終りにある記憶場所において出力バッファよりU
FAの中に置く。この記憶場所は。 復元器によって与えられていたすべての前の文字のNA
計数にLEVEL+1の中の接頭部ストリングの長さの
値を加えたものから決定される0新ストリングの最初の
文字を出力したのち、文31は、N0DOLDにろる前
のストリング符号を復号されるべき接頭部ストリングと
してN0DENOに転送し、文52は、ストリングを復
号する場所であろ土ループに入るブこめに文511への
転送を行う。ラベル200は5文514への転送を行う
ために文′51+に割当てられている。 文28によって行われた試験が現在の符号がテーブル内
に既にあるストリングを表すことを示すとき、ラベル1
30を介して文5うへの正常な符号解釈経路がたどられ
る。Ii’0RTRAN BITS関数を用いる文55
は、呼出されたストリングの接頭部の長さをMODEN
O−1−1の内容によってアドレス指定されたITAB
LEの記憶場所のビット1うにおいて始まる12ビツト
から読取る。この接頭部ストリング長さは、このストリ
ングの拡張が入れられるストリング・テーブルのあとで
の更新のためにLEVELに保存される。 文311は、N0DENO内の符号によって表わされた
部分ストリングをその接頭部ス) IJングと拡張文字
に分解する主ループに入る入口である。文3+1は、部
分ストリングが接頭部ストリング乞もっているかどうか
を決定するために部分ストリングの符号を512より大
きな値に対して調べる。 部分ストリングの符号が512より小さければ、それは
単一文字によって予約された値でアシ、文IlOへの転
送が行われて、この単一文字ストリングを処理して終シ
にする。文ζ0に割当てられたラベル210は、その転
送を行うために用いられる。MODENOが適合多重文
字符号を与える継続的な場合には、それのテーブル記憶
位置の内容は、FOFLTRANのB 工TS 関数を
用いて呼出される。 従って、文う5は、ビット15において始まる12ビツ
トの接頭部ストリング長さを一時変数INDEXの中に
保存する。文36は、ビット25において開始するNB
ITSAビット拡張文字をTCHARに置く。文37は
、次に、第4表のIBITSI?サブルーチンを呼出し
て、この文字をすべての前のストリングの合計NAにI
NDEXに記憶されたこの文字に関連した接頭部ストリ
ングの長さを加えたものを1位置超えたところでその文
字の記憶場所にある出力バッファよりUFAへ入れる。 そのあとで文58は、BITS関数を用いて、呼び出さ
れた記憶場所からの12ビット接頭部ストリング右号を
ITABLEに置いて、その符号のビット1で開始して
、この符号値乞それ以降の処理を行うためにMODEN
Oに入れる。このストリング分解手順は、次に文う9を
介してラベル200を用いて交う4へ逆に送り返すこと
によって繰返される。 文IlOは、N0DENO内の残りの部分ストリング符
号が単一文字ストリングを表すとき、処理を移す先のプ
ログラム内の記憶場所を切分ける。文lIOへの転送は
、各ストリングに対する処理の終りに行われる。単一文
字ストリングに対する符号は、文字値で必るので、文L
IOは、N0II)ENOの内容をICHARに転送す
る。次の文illは、第4表のサブルーチンIBITS
Pを呼出すことによってその文字を出力し、その文字を
前のストリングの合計NAを過ぎた最初の文字位置[f
、−いて出力バッファIBUFAの中に入れる。そのあ
とで、このプログラムのテーブル更新段階に文l12で
入って、この最終文字によって拡張された直前のストリ
ングをストリング・テーブルに入れることができるかど
うかを決定する。このプログラムのテーブル更新段階は
、−文lI2において1に初期設定された探索された計
数変数Nを使って前述の多重探索ハツシング手順を用い
る。文43は、ICHAR内の拡張文字値及びN0DO
LD内の前の文字符号とからの更新を試みる場所である
最初のハツシュアドレスを計算する。量1は、それを上
述の理由でFORTRAN適法テーブル記憶場所に変換
するために、ハツシュアドレスに加えられ、この記は場
所アドレスは、LOCの中に記憶される。 文1lII及び嶋5は、その探索サイトを調べてそれが
拡張文字を記憶するのに適当であるがどうかを決定する
。文イ)番は、拡張ストリングの記憶に使用できないあ
らかじめ割当てられた記憶場所工ないし515(符号ゼ
ロないし512に対応する)の一つに当たるがどうかを
決定する。LOGの中のアドレスがあらかじめ割当てら
れた記憶場PJ′r1ないし513の中の−っに対応す
れば、文4.6への転送が行われ、さらにハツシュアド
レスヲ発生する。その転送は、文I16に割当てられた
ラベル218によって行われる。しかし、そのアドレス
が515よシ大きければ、文++5は、LOC記憶場所
の内容を試験してその記憶場所が空であるがどうかを決
定する。その探索サイトが空であれば、文50への転送
がラベル220を介して行われ、そのストリング・テー
ブルを更新する。しがし、その探索サイトが空でなけれ
ば、そのプログラムは、文l16に進んでもう一つの記
憶場所のためのハツシュアドレスを計算する。文46は
、探索計数Nを1だけ増分し、文り7は、増分された探
索計数を探索長さ限界(この実施例の場合7にセットさ
れている)に対して試験して、それ以上の探索サイトを
試みるべきがどうかを決める。探索長さ限界を越えてぃ
なかったならば、そのテーブルの中に受入れできるスペ
ースが拡張ストリングに対して残って分らず、文55へ
の転送がストリング処理を終らせるために行われる。ラ
ベル225がその転送を行うために文55に割当てられ
る。 しかし、もう1回の探索が認められれば、文IIgは、
LOCに対する新しいハツシュ・アドレス値’4FOR
TRANの必要条件を満たすために用いられたばかりの
値(モジュロn 096 )K加えられたN0DOLD
についての第2のハツシュ関数に1乞足したものによっ
て計算する。次に文lI9は、文lへの再入をラベル2
15を介して行って、その探索を再開する。 文I15を介して適法アドレスをもつ探索サイトが空で
あることがわかったとき、文5oへの転送が行われた。 突きとめられたサイトのアドレスは、この拡張ストリン
グに対する第1表の圧縮プログラムによって作られたも
のであシ、従って、このアドレスは、そのストリングの
符号番号として用いられる。これは、そのストリングに
対する記述データを呼出された記憶場所に書込むことに
よって達成される。従って、文50は、N0DOLDか
らの接頭部ストリング符号をその記憶場所の最初の12
ビツトの中に書込むためにB I T S FORL’
RAN関数を用いる。BITS FORTRAN関数T
R−る文52は、LEVOLDからの接頭部ストリング
長さをその記憶場所の次の12ビツトに書込み、文51
は、ICHARからの拡張文字をその記憶場所の残りの
ビットに書込む。そのあとで1文53〜55において、
ストリング簿記の終りが行われる。文53は、N0CO
DEの内容をN0DOLDに転送し、それによってN0
CODEの中の最も最近読取られた符号記号を前の符号
N0DOLDに変換する。文511は、 この前の符号
のLEVEL内の接頭部ストリング長さを1だけ増分し
て、前のストリングが次のテーブル更新の際に接頭部ス
トリングとして入れられるとき、前のストリングのスト
リング長さを与える。この接頭部ストリング長さの号は
、LEVOLDに記憶される。文55は、出力文字の計
数NAを処理されたばがシの最後のストリングの長さで
あるLEVEL+1の大きさだけ大きくする。ストリン
グ簿記のこの終シが行われたのち、文56は、ラベルi
ooを介して文21への再入を行い、次の久方圧縮符号
記号信号を処理する。 文57は、データ・ブロック処理の終りを切分ける。第
2表のプログラムにおいて、クリーンアップ処理は、必
要ないので、制御が第2表のサブルー チアDECOM
Pを呼出した主プログラムに戻されて、入力バッファよ
りUFBに記憶された圧縮符号記号信号のブロックを復
元する。 第1ないし4表に関して説明した発明の実施例は、FO
RTRANプログラミング言語で与えられた圧縮及び復
元サブルーチンとして例示されたが、その圧縮及び復元
のルーチンは、当然に主プログラムとしてフォーマット
を作ることができた。これらのプログラムは、例えばコ
ンピュータまたはマイクロプロセッサにおいて、ソフト
ウェアとして用いることができるし、または、例えば、
磁気ディスクまたはテープの制御装置の入出力電子回路
において用いるためのROMチップの形でファームウェ
アとして構成してもよい。なお、F”ORI’RAM以
外のプログラミング言語を用いることもできるし、また
は同じ言語捷たは他の言語における他のプログラムコー
ディングをここで説明した機能を行うのに用いて、本発
明のデータ信号圧縮及び復元の諸手順を実施するもでき
る。 マイクロプロセッサまたは他の形式のコンピュータのプ
ログラム式のものがここで説明した能力と技術の1実施
例を、基本的データ操作の選択及び状態順序づけ制御イ
ンプリメンテーションの選択における以外は、ここで述
べたデジタル論理式のものと区別できないものとして与
えることが分る。汎用コンピュータにおける標票化され
たデータ操作動作をワイヤ及び論理ゲートの形でなく再
書込みできる記憶装置に記憶された制御論理の容易に変
更された形と共に作ることの経済性は、実行速度のある
程度の相対的損失で特定の適用業務に対して経済的に作
ることができ、さ細な方法で迅速に変更できる実施例を
与える。 本発明のハードウェア実施例に関する上述のハツシュ関
数は、20ビツトの項目(12の符号ヒツトと8の文字
ビット)を含む符号、文字タプルを12ビツト・アドレ
ス・スペースにマツプスル。 ソフトウェア実施例に関して用いられたハツシュ関数は
、21ビツト項目(12符号ビットと9文字ビット)を
12ビツト・アドレス・スペースにマツプする。20ビ
ツトの価及び21ビツトの値のすべてが起るわけではな
いので、そのようなハツシュ関数を用いることができる
。上述のハツシュ関数を前に述べた基準を満たすように
設計した。 なお、このハツシュ関数は、その諸仮定から生ずる撞着
を最小にするように設計され、第1には、幾つかの個々
の入力文字がほかのものよシより激しく用込られ、低い
番号の文字が激しく使われ易く、そして第2には、幾つ
かの符号が他のものよりよシ激しく用いられ、早期に生
ずる符号が最も激しく用いられるであろう。上述のもの
に代るハツシュ関数を符号の左5ビツトを回転すること
によって最初のハツシュアドレスを発生し、その文字ビ
ットを回転された符号の高位ビットに排他的論理積演算
をしてインプリメントできる。三つの相次ぐアドレスが
前の12ビツト・ハツシュ・アドレスにモジュロ110
96を加えることによって発生され、新しい12ビツト
番号が終端間で反転され、かつ結果として生じた番号の
最下位ビットを1に強制して左5ビツトを回転した符号
番号を含んでいる。 第2図ないし第5図に関−して説明した本発明の実施例
は5本発明の代りの実施例を与えるために上述のものと
異なる組合わせで結合できる種々の随意選択的技術を用
いる。第2図及び第う図の圧縮器−復元器装置は、単一
文字ス) IJソングすべてでストリング・テーブルを
初期設定するが、一方策4図及び第5図の圧縮器−復元
器装置は、ゼロストリングだけでストリング・テーブル
を初期設定する。第2図及び第5図については、単一文
字ス) IJソング初期設定を単一文字そのものをこれ
らのストリングの符号番号として用い、2 よシ大きい
アドレスに対してのみストリング・テーブルにアクセス
することを可能にすることによって行われる。圧縮され
るべき文字のすべては、Bビット・バイトであるから、
すべての文字は、2Bよシ小さな値をもっている。従っ
て、2Bより小さい符号値をもつ単一文字ストリングが
第2図の圧縮器によってストリング・テーブルのアクセ
スなしで伝送されるとともに、第5図の復元器において
単一文字ストリングとして認識され、そ21−によって
直接伝送されてもよい。第4図及び第5図の圧縮器−復
元器装置は、ゼロストリングだけでテーブル初期設定を
行うのであって、それのストリング・テーブルをゼロな
いし2−1のすべてのアドレスで呼出す。従って、第4
図の圧縮器の実施例においては、単一文字ストリングが
、受けた文字を符号番号ゼロでハツシュして、結果とし
て生じたハツシュ・アドレスにあるゼロのストリング接
頭部符号を入れること知よってストリング・テーブルに
入れられる。第5図の復元器もまた接頭部符号ゼロを適
当なストリング・テーブルの記憶場所に入れることによ
って単一文字のストリングを記憶する。 このほかの選択として、第2図及び第5図の圧縮器−復
元器装置は、ストリングのハツシュ・テーブル・アドレ
スをそれのストリング符号記号信号として割当てるが、
一方、第4図及び第5図の圧縮器−復元器装置は、新ス
トリング・エントリが作られるストリング符号記号信号
を各ス)IJングに逐次に割当てる。 なお別の選択として、第2図及び第4図の圧縮器−復元
器装置は、固定長符号値を各ストリングに割当てるが、
一方、第4図及び第5図の圧縮器−復元器装置は、変化
する長さの符号記号を各ストリングに割当てる。第2図
及び第う図の実施例において、固定長はCビットの全ア
ドレス長であるが、一方策4図及び第5図の実施例にお
いては圧縮符号記号の長さはCビットの長さが得られる
までデータブロックの処理の間増える。 なお別の選択として、第5図の復元器は、復元ストリン
グ反転を行うためのストリング長さインデクシング機構
を用いるが、一方、第5図の復元器は、この目的に後入
れ先出しスタックを用いる。 前述のように、各選択は、第2〜5図に開示された実施
例においてインプリメントされる。これらの選択を本発
明の範囲内で追加で実施例を作るようにこの技術におけ
る実務者が再結合できる。 上述の四つの選択の各々は、二つの可能な手段をもって
いるので、16の別々の実施例を構成できる。例えば第
4図の圧縮器に関して、逐次割当てストリング符号をC
ビットの固定長出力として伝送できる。その場合に、符
号大きさ回路12′5を除去できる。そのような実施例
においては、第5図の復元器は、そのときやはり符号大
きさ回路159を除くことになろう。そのような圧縮器
−復元器装置に訃いてストリング・テーブルをゼロスト
リングだけで初期設定する選択が組入れられると(第4
図及び第5図で説明したように)、第4図の圧縮器のシ
フト回路網118を用いてオールゼロの空白符号の伝送
に続くBピット・バイトと同様に固定長Cピット圧縮符
号信号を伝送するのに用いることができる。同様にして
、第5図の復元器は、オールゼロの空白符号を受取った
のに続いて、Bビットバイト信号を受取るためと共に固
定長Cピット符号信号を受入れるためにシフト回路網1
56を用いるであろう。しかし、第4図及び第5図の圧
縮器−復元器装置を上述のように固定長符号選択を含む
ように変更し、さらにすべての単一符号のストリングを
使うストリング・テーブル初期設定を用いるように変更
すると1−れば、第4図の圧縮器のシフト回路網11g
を符号番号レジスタ119からバス120を通して与え
られる出力と共に除去することになろう。そのような実
施例においては、第5図の復元器はそのときバス15g
を介して符号レジスタ157に直接に加えられる入力符
号をもったシフト回路網156を除去するであろう。さ
らに、第4図の符号計数器121をストリング・テーブ
ル初j(IJ段設定行われたのちに、2Bにセットする
ことになり、第5図の符号計数器160をゼロの代りに
2 に初期設定することになろう。なお、符号レジスタ
116からの第4図のバス117は、Bビット文字をレ
ジスタ119の最下位位置に挿入するために符号番号レ
ジスタ119に加えることになろう。レジスタ119の
C−Bの最上位位置をゼロにセットすることになろう。 第4図及び第5図の圧縮器−復元器に対する上述の変更
は、圧縮効率を犠牲にして性能を向上させることになろ
う。 上述のことから、変更された第4図のレジスタ116及
び11つとそれらの動作との間の関係は、第2図のレジ
スタ17及び1つとその動作との間の関係と同一でらる
ことが分る。な訃、すべての単一文字ストリングを匣っ
たテーブル初期設定を用いる変更された実施例をておい
ては、第4図の比較器1うトへのゼロの値をもった入力
は、用いられない。初めて遭遇する文字の単一符号スト
リングを含む単一文字のストリング長 た文字に対して、新しh文字に先だっオールゼロの空白
符号信号を伝送するのではなく、第2図に関して述べた
ものと同一の方法で伝送される。 な訃、すべての単一文字ストリングと固定長圧縮符号信
号とでのテーブル初期設定を用いる第4図及び第5図の
変更圧縮器−復元器実施例においては、第5図の復元器
は、多重文字ストリングまたは単一文字ス) IJソン
グ受取ったかどうかを決定するために符号レジスタ15
7の内容をゼロにではなく2Bに比較することによって
変更される0バス162は、符号レジスタ157から出
されて、単一文字ストリングを直接にスタック161に
伝送する。バス180の上の符号は、一つのス) IJ
ソング中の最初の文字にRAM177のストリング・テ
ーブルを通る逆方向トレースにおいて遭遇したときを決
定するためにゼロにではなく2 に比較される。RAM
アドレスレジスタ165からスタック161の先頭への
バスは、第5図の復元器に関して前述したのと同様のや
り方でトレースされたストリングの最終文字をスタック
161へ転送するように接続される。第5図のゼロ検出
器174は、この変更実施例に分いてはもはや必要でな
くなる。レジスタ157に入るゼロの値をもつた入力も
必要なくなる。 単一文字のストリングのすべてでストリング・テーブル
を初期設定し、新しいストリング・エントリが作られる
とき、ストリング符号記号を逐次に割当て、そして変化
する長さの圧縮符号信号を伝送する圧縮器−復元器実施
例を作りたい場合は、第4図及び第5図の装置をそれ相
応に変更できる。 第4図の圧縮器は、ストリング・テーブルの初期設定が
行われたのちに、符号計数器121を2Bにセットして
、第5図の割数器160をゼロの代りに2 に初期設定
することによって変更できる。 なお、文字レジスタ116からの第4図のバス117は
、上述のように符号番号レジスタ119へ加えられる。 同様に第5図の復元器は、多重文字ストリングまたは単
一文字ストリングを受取ったかどうかを決定するために
符号レジスタ157の内容をゼロにではなく2Bに比較
することによって変更される。なお、バス140の上の
符号は、一つのストリング内の最初の文字にRAM17
7のストリング・テーブルを通る逆方向トレースで遭遇
したときを決定するのにゼロにではなく2Bに比較され
る。この実施例に分いては、第5図のゼロ検出器171
Iもレジスタ157に入るゼロの値をもった入力も必要
でなくなる。 空白ストリングだけでストリング・テーブルを初期設定
するように第2図及び第5図の圧縮器復元器実施例を変
更したい場合、比較器26は空白符号及び全符号に等し
いノ・ツシュ関数アドレスを放棄するように変更される
。なお、比較器52は、文字レジスタ17の中のBビッ
ト文字を空白9]号の伝送のあとに伝送すべきかどうか
を決定するために符号番号レジスタ19の中の値をゼロ
と比較するように変更される。Bピット文字をゼロを満
たされたCビット文字として伝送できるし、またはその
代りにシフト回路網機構を前述のものと同様に用いるこ
ともできる0同様にして、第う図の復元器は、2Bでは
なくゼロを検出するためと符号レジスタ57を制御する
ためとに比較器58を用いることによって空白符号に直
接続く単一文字を伝送するように変更できる。 上述のことから第2図及び第5図の実施例は、圧縮効率
を犠牲にして最高性能を与えることがわかるであろう。 なお、第4図及び第5図の実施例は、性能を犠牲にして
最高圧縮を与える。各選択を組合わせる上述の変更、す
なわち、すべての単一文字ストリングを用いてのテーブ
ル初期設定;新しいストリングを作るとき逐次に割当て
られるス) IJング符号記号;固定長符号値を伝送す
ること;及び後入れ先出しスタックを用いるストリング
反転、は適用業務に従って好ましい実施例を与えること
のできる最高性能と最高圧縮との間の中間のものである
。ストリング反転のための第5図のスタック機械化は、
第5図のストリング長さインデクシング機構と容易に相
互交換できる。ストリング長さインデクシングを用いる
とき、レベル欄は、RAM記憶場所に追加され、第う図
のインデクシング機構の構成要素61.78.85.8
6.88、及び91が用いられる。スタック機構が用い
られるとき、RAMのレベル欄は必要でなく、第5図の
構成要素161.1811及び185が用いられる。 上述のように、第1〜11表は、第2図及び第う図の最
高性能ノ・−ドウエア実施例の各選択を用いる本発明の
プログラム式コンピュータの実施例を示す。本発明の種
々のソフトウェア実施例は、上述の各選択の種々の組合
せを普通に熟練したコンピュータ・プログラマによって
定形的に与えられるそれ用のプログラムコーディングと
共に用いることによって与えられることがわかる。 まとめると、本発明は入力データの中で観察された文字
のス) IJング仁多分、圧縮されるべきデータブロッ
クの始めにおいてテーブルを初期設定できる単一文字ス
トリングなどのストリングを除いて記憶するストリング
・テーブルを用いる。 それらのストリングは、各ストリングの記憶さ才tたセ
ットが処理されているデータの統計に適応するようにス
トリングが入力データ文字ストリームの中で観測される
とき、テーブルに動的に入れられる。X文字の各ストリ
ングは、X−1文字の接頭部ストリングと−クの拡張文
字とを含み、その場合に接頭部ストリングもまたテーブ
ルの1構成要素である。各ストリングは、一つの符号記
号を割当てられ、記憶されたストリングが入力データ文
字ストリームの中で遭遇されると、遭遇したストリング
は、圧縮データの中でその符号信号によって表わされる
。各ストリングは、ストリングの符号記号、接頭部ス)
 IJソング符号記号、及びストリング拡張文字とによ
って判然とまたは暗黙裏にのいずれかで記憶される。デ
ータ文字信号のストリームは、各文字のストリングにそ
のストリームをパースすることによって処理され、各ス
トリングは、ストリング・テーブルの中に置かれた。 このパージングは、始めの文字から出発して1度に1文
字ずつ分離するデータ文字ストリームの中への唯1回の
パスにおいて達成きれる。各文字は、拡張されたストリ
ングがストリング・テーブル内にあるものに一致する場
合、前のストリームを拡張するのに用いられる。そうで
なければ、その文字は、新しいストリングを開始するの
に用いられる。基本的には、圧縮処理は、入力データス
トリームの中で各文字が出てきたとき、各文字に次々に
加えられる循環ステップとして考えられてもよい。 入力データストリームからのストリングSをストリング
・テーブル内で場所をつきとめた。その入力データ・ス
トリームの中で次に続く文字Cに対して、そのテーブル
は、拡張ストリングScがその中に存在するかどうかを
決定するために探索される。ストリングScがそのテー
ブルの中に存在すれば、次に続く文字が試験されてその
手続きが再び適用される。拡張ストリングがそのテーブ
ルに存在しなければ、ストリングSに対する符号記号が
圧縮出力として伝送され、ストリングSCがそのテーブ
ルに入れられる。次に文字Cは、次のス) IJソング
最初の文字として用いられて、その手続きは、次に続く
入力文字を用いて再び適用される。 て行われる。拡張ストリングScは、既にその記憶場所
に記憶されていれば、そのス) IJソングcは、その
テーブルの中に存在する。その記憶場所が空であれば、
そのス) IJソング、そのテーブルの中に存在しない
。その場合には、ストリングSに対する符号記号が伝送
され、ストリングScが空記憶場所に入れられる。でき
れば、文字CとストリングSに対する符号との組合せが
上述の限定深床ハツシュ手順によって行われるのが好ま
しい〇圧縮の間、ハツシュ・テーブル機械化は、圧縮手
順の中の1一点において定められた可能なストリングの
数がストリングの実際の数及びある本質的なファクタに
よる経済的記憶装置の大きさを超えることになるので、
あらかじめ割当てられていないストリングを記はするの
に用いられる。一般的には、ハツシュ・テーブルの各記
憶場所が選択された数学的関数によって割当てられた可
能な項目のレスが限られた数の記憶アドレスの小さなグ
ループ内でのみ現れる。この基傳は、可能なエントリを
探すためまたはそれがケーブルの中てないことを定める
ために必要な探索の量を限定する。 圧縮の間ストリングが少なくともそれを識別するための
その接頭部符号を用いて検索される。復元の間、ストリ
ングがその符号記号によって直接に識別される。復元器
のストリング・テーブルは、各ストリング記憶場所に接
頭部ス) IJソング号及び拡張文字を記憶し、そのス
トリング記憶場所は、そのストリングに対する符号によ
ってアドレス指定可能である。従って、入力符号記号は
、接頭部ストリング及び拡張文字を与えるテーブル内で
探索される。次に接頭部ストリングは断接頭部ストリン
グ及び新拡張文字を与えるテーブル内で探索される。こ
の過程は初めの単一文字ストリングに出合うまで繰返さ
れる。 本発明の上述の各実施例において、ノ・ツシュアドレス
または数が大きくなってゆく次々の値がストリングのた
めの圧縮符号記号信号として用いられる。これらの値の
矛盾のない変更またはアイソモルフイズムもまたそれら
のストリングに対する圧縮符号記号信号として用いるこ
とができるとわかる。 本発明の上述の実施例の若干の変形を以下のように容易
にわかる設計変更を用いて行うことができる。 本発明の圧縮器がディスク装置またはテープ装置のよう
な同期チャネルに圧縮データを与えている場合、その出
力速度がバッファリングを最小にするためにチャネルの
入力速度に一致するように圧縮器の速度を増減するのが
望ましいことがある。 圧縮器の出力速度を達成された圧縮比によって制御し、
その圧縮比は遭遇したデータの形式に従って変る。圧縮
器が高過ぎる速度で出力記号を作るように、その圧縮器
が圧縮しにくいデータに遭遇した場合、圧縮器を入力文
字の間で待機させることによって減速できる。圧縮器が
非常に圧縮しやすいデータに遭遇するので、それが出力
記号をあまシゆつくシ作る場合、その圧縮器を圧縮器の
効率を減らすことによってスピードアップできる。 これは、出力符号記号を必要とするときは常に、文字ス
トリング拡張を中止することによって行われてもよい。 従って、圧縮器が必要な出力速度を遅くするときは常に
最長マツチよシ少ないストリングを選ぶことができる。 なお、圧縮有効度は、データブロックの初期部分を処理
するとき低くなシ、そのブロックの処理が続くとき増加
する傾向があるので、圧縮符号ストリームの転送を開始
する前に圧縮を始めて圧縮速度の変化を相殺することが
望ましいことがある。この待ち時間損失は、圧縮データ
を圧縮器から外部装置に書込むときにのみ起ることがわ
かる。圧縮データを外部装置から読出すときには、復元
を圧縮データが外部信号源から使用できるようになった
ら直ちに開始できる。 さらに別の変更が選択された値より小さくなるようにパ
ースされたストリング長さを制限するために圧縮器の一
部分として割数器を用いることな速度がさらに予測しや
すぐなるように瞬時圧縮比の変動を小さくするであろう
。なp、そのような計数器は、最大ストリング長さに敏
感な復元器内の装置の価格を引下げるであろう。そのよ
うな装置には、第5図の後入れ先出しスタック161の
ほかに、レベル・レジスタ78及びg5、アドレス加算
器g6、アウトポインタ・レジスタ88ならびに第う図
のRAM75のレベル欄がある。 本発明のさらに別の変更は、同時にではないけれども圧
縮及び復元の両方に対して同じハードウェア装置のセッ
トを用いることであることがある。 圧縮及び回復の必要条件の開には特にRAMについて、
同時性を失ってもよいとき、′かな9の価格の節約をこ
の変更によって得ることができるという十分な類似性が
ある。なお、圧縮インプリメンテーションにおいて連想
記憶装置をRA、 Mの代シに用いることもできよう。 そのような変更は、ハウジングの必要をなくして制御の
複雑さを減らす。 〔■〕発明の効果 “ 適応可逆データ圧縮及び復元をデータ統計また1はデー
タ冗長度の形についての前もっての知識を何もなしに達
成する。良好な圧縮比が最も速い今日の磁気テープ及び
磁気ディスクデータ記憶装置ならびに最も速い今日の商
用通信リンクと共に用いるのに適する高性能動作で達成
される。
【図面の簡単な説明】 第1図はデータ文字信号のストリームのパースされた部
分の略図表現、 第2図は最高性能を与えるようにインプリメントでれた
本発明によるデータ圧縮器の略ブロック図、 第5図は最高性能を与えるようにインプリメントされ第
2図の圧縮器からの符号信号の圧縮ストリームを復元す
るのに適応された本発明によるデータ復元器の略ブロッ
ク図、 第4図は最高圧縮を与えるようにインプリメントされた
本発明によるデータ圧縮器の略ブロック図、 第5図は第4図の圧縮器からの符号信号の圧縮ストリー
ムを復元するようにインプリメントされた本発明による
データ復元器の略ブロック図である。 13−一制御装置、17−〜文字レジスタ、19−一符
号番号レジスタ、23−一ハッシュ関数回路、26.う
2−−比較器、211!−−RAMアドレス・レジスタ
、2つ一−RAM、35−−初期設定計数器、53−一
制御装置、57.611−一符号レジスタ、5g、72
−一比較器、G 1−−Fit終文字vシスタ、62−
−’RAM7ドレス・レジスタ、6つm−ハッシュ関数
回路、75−−RAM。 78.85−一レベル・レジスタ、F31−一検出器、
86−−アトレス加算器、88−一アウドポインタ・レ
ジスタ、9ニー−加算器、9うm−初期設定計数器、1
15−一制御装置、116一−文字レジスタ、118−
−シ刈・回路網、11つm−符号番号しジヌタ、121
−一符号計数器、123−一符号大きさ回路、127−
−ハツシユ関数回路、150−−RAMアドレス・レジ
スタ、151−−RAM。 141−一初期設定計数器、155−一制御装置、15
6−−シフト回路網、157.172−一符号レジスタ
、15つm−符号大きさ回路、160−’−符号網数器
、161−−スタック、163−一検出器、165−一
玉侃アドレス・レジスタ、167−−比較器、1[)9
,174゜181.1B5−−ゼロ検出器、17’7−
− RAM。 Iall−−スタック計数器。 手 続 補 正 1.(方式) 昭オロ59年 特 許 願第 1251473号5、補
正する者 事件との関係 特許出願人 、41代理人

Claims (1)

  1. 【特許請求の範囲】 L データ圧縮及びデータ復元の装置において、データ
    文字信号のストリームを符号信号の圧縮ストリームに圧
    縮する圧縮装置であって、データ文字信号の前記ストリ
    ーム内で遭遇したデータ文字信号のストリングを記憶す
    る記憶手段と、 データ文字信号の前記ストリームを前記記憶されたスト
    リングとの最長マツチを決めるために前記記憶されたス
    トリングと比較することによってデータ文字信号の前記
    ス) IJ −ムな探索する手段と、 前記最長マツチに続く次のデータ文字信号によって拡張
    されたデータ文字信号の前記ストリームとの最長マツチ
    を含む拡張ストリングを前記記憶手段に記憶するために
    前記記憶手段に挿入する手段と、 前記記憶された拡張ストリングに対応する符号信号を割
    当てる手段と、 符号信号の前記圧縮ストリームを与えるように前記最長
    マツチに関連した符号信号を与える手段とを備え、 前記記憶された各ストリングがそれぞれそれと関連した
    符号信号を有することを特徴とする圧縮装置。 2 データ文字信号の各前記記憶されたストリングがデ
    ータ文字信号の接頭部ストリングと拡張文字信号とを含
    み、前記接頭部ストリングは前記記憶手段に記憶された
    一つのス) IJソング対応し; 前記記憶手段が複数のアドレス信号によってそれぞれ呼
    出しできる複数の記憶場所を有する記憶装置手段を含み
    ; データ文字信号の前記記憶された各ストリングがそれぞ
    れ前記各記憶場所に記憶されておりニ 一つの記憶場所を呼出すアドレス信号がその記憶場所に
    記憶されたストリングに対応する符号信号を与え、前記
    ストリングは、前記記憶されたストリングの接頭部スト
    リングに対応する前記符号信号を少なくとも記憶するこ
    とによって前記記憶場所に記憶される特許請求の範囲第
    1項に記載の圧縮装置。 5 前記探索手段は、前記記憶装置手段を備えるととも
    に、さらに 前記ストリング符号信号と前記データ文字信号とに応動
    してデータ文字信号を符号信号でハツシュして前記記憶
    装置手段を呼出すポテンシャル・アドレス信号を与エル
    ノ)ツシュ関数発生手段; データ文字信号を保持する文字レジスタ手段; 圧縮符号信号を保持する符号レジスタ手段;アドレス信
    号を保持するアドレスレジスタ手段; 前記記憶装置手段及び前記符号レジスタ手段に接続され
    て前記アドレスレジスタ手段によってアドレス指定され
    た前記記憶装置手段の一つの記憶場所の内容を前記符号
    レジスタ手段に保持された符号信号及び前記記憶装置手
    段のある記憶場所が空であることを示す空しるし信号と
    比較してそれらとの相等を決める比較器手段; 前記アドレスレジスタ手段に保持されたアドレス信号を
    前記符号レジスタ手段に転送する手段;及び 前記比較器手段に接続されて、前記現在のアドレス信号
    によって呼出された前記記憶装置手段の記憶場所の内容
    が前記符号レジスタ手段に保持された符号信号に等しい
    ときに前記アドレス・レジスタ手段に保持された現在の
    アドレス信号の前記符号レジスタ手段への転送及び新し
    いデータ文字信号の前記文字レジスタ手段への転送を制
    御する制御手段、を含み、 前記文字レジスタ手段及び前記符号レジスタ手段は、前
    記ハツシュ関数発生手段に接続されて、それぞれそれら
    に保持されたデータ文字信号及び符号信号を前記ノ・ツ
    シュ関数発生手段に与えてそれらの信号に従って前記ノ
    ・ツソユ信号を発生し、 前記アドレス・レジスタ手段は、前記ノ・ツシュ関数発
    生手段からの前記ノ・ツシュ信号を受けるように接続さ
    れるほかにさらに前記アドレス・レジスタ手段に保持さ
    れたアドレス信号に対応する前記記憶装置手段の記憶場
    所において前記記憶装置手段を呼出すように接続されて
    いることを特徴とする特許請求の範囲第1扉に記載の圧
    縮装置。 4 前記挿入手段は、前記符号レジス゛り手段に保持さ
    れた前記符号信号を前記記憶装置手段に転送する手段を
    備え、 前記制御手段は、前記比較器手段が前記アドレスレジス
    タ手段に保持された前記アドレス信号によってアドレス
    指定された前記記憶装置手段の記憶場所が前記空しるし
    信号を含むと決定したとき、前記符号レジスタ手段に保
    持された前記符号信号の前記アドレスレジスタ手段に保
    持された前記アドレス信号によってアドレス指定された
    前記記憶装置手段の記憶場所への挿入を制御する特許請
    求の範囲第5項に記載の圧縮装置。 5 データ文字信号の各前記記憶されたストリングは、 文字信号の接頭部ストリング及び拡張文字信号を備え、 前記記憶手段は、複数のアドレス信号によって呼出しで
    きる複数の記憶場所をそれぞれ有する記憶装置手段を備
    え、 データ文字信号の前記記憶されたス)IJングは、前記
    記憶場所にそれぞれ記憶され、一つのストリングがある
    記憶場所に記憶されるには、その記憶場所に記憶される
    ストリングに対応する符号信号及び記憶されるストリン
    グの接頭部ストリングに対応する符号信号をその記憶場
    所に記憶することによってなされることを特徴とする特
    許請求の範囲第1項に記載の圧縮装置。 6 前記記憶装置手段の各前記記憶場所は、その記憶場
    所に記憶されたストリングの接頭部ス) IJングに対
    応する符号信号を記憶する接頭部符号欄と、 その記憶場所に記憶されたストリングの符号信号を記憶
    するヌトリング符号欄とを備えていることを特徴とする
    特許請求の範囲第5項に記載の圧縮装置。 7 前記探索手段が前記ストリング符号信号と前記デー
    タ文字信号とに応答してデータ文字信号を符号信号でハ
    ツシュして、前記記憶装置手段を呼出すポテンシャル・
    アドレス信号を与えるハツシュ信号を与えるノ・ソシュ
    関数発生手段を備える特許請求の範囲第2項または第6
    項に記載の圧縮装置。 8 前記探索手段が前記記憶装置手段を備えると共にそ
    のほかに データ文字信号を保持する文字レジスタ手段; 圧縮符号信号を保持する符号レジスタ手段。 アドレス信号を保持するアドレスレジスタ手段; 前記記憶装置手段と前記符号レジスタ手段とに接続され
    て前記アドレスレジスタ手段によってアドレス指定され
    た前記記憶装置手段の記憶場所の接頭部符号欄の内容を
    前記符号レジスタ手段に保持された符号信号と比較して
    それらの相等を決定する比較器手段:前記記憶装置手段
    に接続されて前記アドレスレジスタ手段によってアドレ
    ス指定された前記記憶装置手段の記憶場所のストリング
    符号欄の内容が前記空しるし信号に等しいときを検出す
    る検出器手段; 前記アドレス・レジスタ手段によってアドレス指定され
    た前記記憶装置手段の記憶場所のストリング符号欄の内
    容を前記符号レジスタ手段に転送する手段;及び 前記比較器手段に接続されて前記現在のアドレス信号に
    よって呼出された前記記憶装置手段の記憶場所の接頭部
    符号欄の内容が前記符号レジスタ手段に保持された符号
    信号に等しいとき、前記アドレス・レジスタ手段に保持
    された現在のアドレス信号によって呼出された前記記憶
    装置手段の記憶場所のストリング符号欄の内容の前記符
    号レジスタ手段への転送及び新しいデータ文字信号の前
    記文字レジスタ手段の中への転送を制御する制御手段を
    備え、 前記文字レジスタ手段と前記符号レジスタ手段とは、前
    記ハツシュ関数発生手段に接続されてそれぞれそれらの
    中に保持されたデータ文字信号と符号信号をそれらの信
    号に従って前記ハツシュ信号を発生するための前記ノ・
    ツシュ関数発生手段に与え、 前記アドレスレジスタ手段は、前記ノ・ツシュ関数発生
    手段からの前記ノ・ツシュ信号を受けるように接続され
    ると共にさらに前記アドレスレジスタ手段に保持された
    アドレス信号に対応する前記記憶装置手段の記憶場所に
    おいて前記記憶装置手段を呼出すように接続されている
    ことを特徴とする特許請求の範囲第7項に記載の圧縮装
    置。 9、前記探索手段がさらに前記文字レジスタ手段からの
    データ文字信号を前記符号レジスタ手段に転送して前記
    データ文字信号をそれに対応する圧縮符号信号に変換す
    る手段を含む特許請求の範囲第5項または第8項に記載
    の圧縮装置。 10 前記挿入手段が 数が増えてゆく符号信号を発生ずる符号計数器手段と、 前記符号計数器手段からの符号1百号を前記記憶装置手
    段に転送してアドレス指定された記憶場所のストリング
    符号欄に挿入する手段と、 前記符号レジスタ手段に保持された前記符号信号を前記
    記憶装置手段に転送して前記アドレス指定された記憶場
    所の接頭部符号欄に挿入する手段とを備え、また、 前記制御手段は、前記検出器手段が前記アドレスレジス
    タ手段に保持された前記アドレス信号によってアドレス
    指定された前記記憶装置手段の記憶場所が前記空しるし
    信号を含むことを決定したときに、前記符号計数器手段
    によって与えられた前記符号信号及び前記符号レジスタ
    手段に保持された前記符号信号とを前記アドレス・レジ
    スタ手段に保持されたアドレス信号によってアドレス指
    定された前記記憶装置手段の記憶場所のストリング符号
    欄及び接頭部符号欄にそれぞれ挿入するのを、制御する
    手段を備えている特許請求の範囲第8項に記載の圧縮装
    置。 IL 前記圧縮装置がさらに符号信号の圧縮されたスト
    リームからデータ文字信号のストリームを回復する復元
    装置を含み、前記復元装置は、 符号信号のストリームを受ける手段; 前記受取った符号信号に対応するデータ文字信号のスト
    リングをそれぞれ記憶する言己憶受取った符号信号によ
    ってアドレス指定された前記記憶装置手段のある記憶場
    所に記憶されたストリングからデータ文字信号を引出す
    手段; 最後に受取った符号信号に先だって受取った符号信号を
    含む拡張ス) IJソング前記最後に受取った符号信号
    に応答して引出されたデータ文字信号のストリング内の
    最後に引出されたデータ文字信号を含む拡張文字信号を
    前記記憶装置手段に挿入する第2の挿入手段; 前記拡張ストリングに対応しかつ前記拡張ストリングを
    記憶すべき前記記憶装置手段の記憶場所を呼出すアドレ
    ス信号を与える符号信号を割当てる第2の割当て手段; データ文字信号の前記引出されたストリングを反転する
    手段と を備え、 前記記憶手段は、それぞれ複数のアドレス信号によって
    呼出しできる複数の記憶場所を有し、 データ文字信号の前記ストリングはそれぞれ前記記憶場
    所に記憶されており、 前記受取った符号信号はそれぞれ前記受取った符号信号
    に対応するストリングを記憶する前記記憶装置手段の記
    憶場所を呼出すアト ルス信号を与え、 データ文字信号の各前記記憶されたストリングはデータ
    文字信号の接頭部ストリングと拡張文字信号とを備え、 前記接頭部ストリングは、前記記憶装置手段に記憶され
    たストリングに対応することを特徴とする特許請求の範
    囲第1項に記載の圧縮装置。 12 前記記憶装置手段の各前記記憶場所がその記憶場
    所に記憶されたス) IJソング接頭部ストリングに対
    応する符号信号を記憶する接頭部符号欄と、 その記憶場所に記憶されたストリングの拡張文字信号を
    記憶する文字欄とを備えている特許請求の範囲第11項
    に記載の圧縮装置。 5 前記符号信号のス) IJ−ムを受ける手段が受取
    った符号信号を保持する符号レジスタ手段を備えている
    特許請求の範囲第12項に記載の圧縮装置。 ヰ、 前記データ文字信号を引出す手段が前記記憶装置
    を含むと共にさらに、 アドレス信号を保持するアドレス・レジスタ手段; 前記アドレスレジスタ手段によってアドレス指定された
    前記記憶装置手段のある記憶場所の接頭部符号欄の内容
    を前記アドレスレジスタ手段に転送する手段、 前記アドレスレジスタ手段によってアドレス指定された
    前記記憶装置手段の前記記憶場所の文字欄の内容を・与
    える手段、 前記アドレスレジスタ手段に転送された前記接頭部符号
    欄の前記内容に応じて前記接頭部符号欄の前記内容が受
    取った符号信号によつてアドレス指定されたその記憶場
    所に記憶されたストリングの最初の文字を示すときを決
    定する比較器手段と 前記比較器手段に接続されて前記アドレス・レジスタ手
    段に保持された現在のアドレス信号によって呼出された
    前記記憶装置手段の記憶場所の接頭部符号欄の内容の前
    記アドレス・レジスタ手段への転送及び前記アドレス・
    レジスタ手段に保持された現在のアドレス信号によって
    呼出された前記記憶装置手段の記憶場所9文字欄の内容
    を前記アドレス・レジスタ手段に転送された接頭部符号
    欄の内容が前記受取った符号信号によってアドレス指定
    された前記記憶装置手段の記憶場所に記憶されたストリ
    ングの最初の文字を示すまで前記文字欄の内容を与える
    手段によって与えることを制御する制御手段と乞備えて
    成る特許請求の範囲第15項に記載の圧縮装置。
JP59125473A 1983-06-20 1984-06-20 ディジタル信号ストリーム圧縮方法及び圧縮装置 Granted JPS60116228A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/505,638 US4558302A (en) 1983-06-20 1983-06-20 High speed data compression and decompression apparatus and method
US505638 1990-04-06

Publications (2)

Publication Number Publication Date
JPS60116228A true JPS60116228A (ja) 1985-06-22
JPH0568893B2 JPH0568893B2 (ja) 1993-09-29

Family

ID=24011192

Family Applications (3)

Application Number Title Priority Date Filing Date
JP59125473A Granted JPS60116228A (ja) 1983-06-20 1984-06-20 ディジタル信号ストリーム圧縮方法及び圧縮装置
JP4334804A Expired - Lifetime JP2610084B2 (ja) 1983-06-20 1992-12-16 データ伸長方法および装置ならびにデータ圧縮伸長方法および装置
JP7341868A Pending JPH08237138A (ja) 1983-06-20 1995-12-27 圧縮装置および圧縮方法

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP4334804A Expired - Lifetime JP2610084B2 (ja) 1983-06-20 1992-12-16 データ伸長方法および装置ならびにデータ圧縮伸長方法および装置
JP7341868A Pending JPH08237138A (ja) 1983-06-20 1995-12-27 圧縮装置および圧縮方法

Country Status (5)

Country Link
US (1) US4558302A (ja)
EP (1) EP0129439B1 (ja)
JP (3) JPS60116228A (ja)
CA (1) CA1223965A (ja)
DE (1) DE3476617D1 (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02233025A (ja) * 1989-01-23 1990-09-14 Codex Corp 可変長ストリング符合装置
JPH03204232A (ja) * 1989-12-28 1991-09-05 Internatl Business Mach Corp <Ibm> 圧縮データの符号化方法
JPH03204233A (ja) * 1989-12-28 1991-09-05 Internatl Business Mach Corp <Ibm> データ圧縮方法
WO1991013395A1 (en) * 1990-02-26 1991-09-05 Fujitsu Limited Data compression and restoration method and device therefor
JPH03204234A (ja) * 1989-12-28 1991-09-05 Internatl Business Mach Corp <Ibm> 圧縮データ復元方法
JPH03204235A (ja) * 1989-12-28 1991-09-05 Internatl Business Mach Corp <Ibm> 圧縮データの復号方法
JPH04156111A (ja) * 1990-10-19 1992-05-28 Fujitsu Ltd データ圧縮方法
JPH04156109A (ja) * 1990-10-19 1992-05-28 Fujitsu Ltd Zl符号化方法
JPH04156110A (ja) * 1990-10-19 1992-05-28 Fujitsu Ltd データ圧縮方法
JPH06232914A (ja) * 1992-12-04 1994-08-19 Internatl Business Mach Corp <Ibm> 準静的データを圧縮し展開する方法
JPH08274649A (ja) * 1995-03-22 1996-10-18 Internatl Business Mach Corp <Ibm> Lempel−Zivタイプ・アルゴリズムを用いたデータ圧縮装置
US6268809B1 (en) 1997-12-05 2001-07-31 Kabushiki Kaisha Toshiba Data compression method for efficiently compressing data based on data periodicity
WO2017163896A1 (ja) 2016-03-22 2017-09-28 パナソニックIpマネジメント株式会社 ログ収集装置、ログ生成装置、およびログ収集方法

Families Citing this family (343)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4814746A (en) * 1983-06-01 1989-03-21 International Business Machines Corporation Data compression method
JPS59231683A (ja) * 1983-06-01 1984-12-26 インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン データ圧縮方法
JPS61170442A (ja) * 1985-01-23 1986-08-01 松下電器産業株式会社 超音波ドツプラ血流装置
US4758955A (en) * 1985-07-19 1988-07-19 Carson Chen Hand-held spelling checker and method for reducing redundant information in the storage of textural material
US4899128A (en) * 1985-12-11 1990-02-06 Yeda Research And Development Co., Ltd. Method and apparatus for comparing strings using hash values
US4899149A (en) * 1986-02-28 1990-02-06 Gary Kahan Method of and apparatus for decoding Huffman or variable-length coees
JPH02500693A (ja) * 1986-09-09 1990-03-08 インベントロニツク・データ・システムズ・エービー データ圧縮用装置
US4905297A (en) * 1986-09-15 1990-02-27 International Business Machines Corporation Arithmetic coding encoder and decoder system
US4891643A (en) * 1986-09-15 1990-01-02 International Business Machines Corporation Arithmetic coding data compression/de-compression by selectively employed, diverse arithmetic coding encoders and decoders
JPH0815263B2 (ja) * 1986-12-12 1996-02-14 株式会社日立製作所 データ圧縮復元方法
JPH0815262B2 (ja) * 1986-12-12 1996-02-14 株式会社日立製作所 データ圧縮復元処理装置
DE3856337T2 (de) * 1987-09-24 2000-03-23 Sand Technology Systems Int Bitfolgekompressor geeignet für boolesche Operationen
US5036457A (en) * 1987-09-24 1991-07-30 Nucleus International Corporation Bit string compressor with boolean operation processing capability
US4881075A (en) * 1987-10-15 1989-11-14 Digital Equipment Corporation Method and apparatus for adaptive data compression
US4876541A (en) * 1987-10-15 1989-10-24 Data Compression Corporation Stem for dynamically compressing and decompressing electronic data
US4847619A (en) * 1987-10-19 1989-07-11 Hewlett-Packard Company Performance-based reset of data compression dictionary
US4906991A (en) * 1988-04-29 1990-03-06 Xerox Corporation Textual substitution data compression with finite length search windows
US4899147A (en) * 1988-06-03 1990-02-06 Unisys Corporation Data compression/decompression apparatus with throttle, start-up and backward read controls
US5258910A (en) * 1988-07-29 1993-11-02 Sharp Kabushiki Kaisha Text editor with memory for eliminating duplicate sentences
US5146221A (en) * 1989-01-13 1992-09-08 Stac, Inc. Data compression apparatus and method
US5126739A (en) * 1989-01-13 1992-06-30 Stac Electronics Data compression apparatus and method
US5016009A (en) * 1989-01-13 1991-05-14 Stac, Inc. Data compression apparatus and method
US5003307A (en) * 1989-01-13 1991-03-26 Stac, Inc. Data compression apparatus with shift register search means
US5532694A (en) * 1989-01-13 1996-07-02 Stac Electronics, Inc. Data compression apparatus and method using matching string searching and Huffman encoding
US4929946A (en) * 1989-02-09 1990-05-29 Storage Technology Corporation Adaptive data compression apparatus including run length encoding for a tape drive system
DE3921646A1 (de) * 1989-06-30 1991-01-03 Siemens Ag Verfahren zu einer codierung einer elementfolge und einrichtung zur durchfuehrung des verfahrens
US5006849A (en) * 1989-07-26 1991-04-09 Astro, Inc. Apparatus and method for effecting data compression
US4971407A (en) * 1989-08-09 1990-11-20 Unisys Corp. Two stage run and string data compressor providing doubly compressed output
US4988998A (en) * 1989-09-05 1991-01-29 Storage Technology Corporation Data compression system for successively applying at least two data compression methods to an input data stream
US5254990A (en) * 1990-02-26 1993-10-19 Fujitsu Limited Method and apparatus for compression and decompression of data
FR2660088B1 (fr) * 1990-03-26 1992-06-26 Arditti David Dispositif de condensation de donnees numeriques.
US6816872B1 (en) 1990-04-26 2004-11-09 Timespring Software Corporation Apparatus and method for reconstructing a file from a difference signature and an original file
US5479654A (en) * 1990-04-26 1995-12-26 Squibb Data Systems, Inc. Apparatus and method for reconstructing a file from a difference signature and an original file
US5410671A (en) * 1990-05-01 1995-04-25 Cyrix Corporation Data compression/decompression processor
JPH05501317A (ja) * 1990-05-30 1993-03-11 アダプティブ・ソリューションズ・インコーポレーテッド 仮想ゼロ値を用いるニューラル・ネットワーク
US5497488A (en) * 1990-06-12 1996-03-05 Hitachi, Ltd. System for parallel string search with a function-directed parallel collation of a first partition of each string followed by matching of second partitions
US5023610A (en) * 1990-06-13 1991-06-11 Cordell Manufacturing, Inc. Data compression method using textual substitution
US5049881A (en) * 1990-06-18 1991-09-17 Intersecting Concepts, Inc. Apparatus and method for very high data rate-compression incorporating lossless data compression and expansion utilizing a hashing technique
DE69128053T2 (de) * 1990-08-06 1998-02-26 Fujitsu Ltd Wörterbuch-Suchsystem
DE69123660T2 (de) * 1990-08-13 1997-04-17 Fujitsu Ltd Datenkompressionsmethode und Gerät
US5051745A (en) * 1990-08-21 1991-09-24 Pkware, Inc. String searcher, and compressor using same
US5087913A (en) * 1990-08-27 1992-02-11 Unisys Corporation Short-record data compression and decompression system
US5151697A (en) * 1990-10-15 1992-09-29 Board Of Regents Of The University Of Washington Data structure management tagging system
US5142282A (en) * 1990-11-07 1992-08-25 Hewlett-Packard Company Data compression dictionary access minimization
US5136291A (en) * 1990-11-30 1992-08-04 Unisys Corporation Transmitting binary data files using electronic mail
US5150430A (en) * 1991-03-15 1992-09-22 The Board Of Trustees Of The Leland Stanford Junior University Lossless data compression circuit and method
CA2065578C (en) * 1991-04-22 1999-02-23 David W. Carr Packet-based data compression method
US5369773A (en) * 1991-04-26 1994-11-29 Adaptive Solutions, Inc. Neural network using virtual-zero
US5179378A (en) * 1991-07-30 1993-01-12 University Of South Florida Method and apparatus for the compression and decompression of data using Lempel-Ziv based techniques
US5159336A (en) * 1991-08-13 1992-10-27 Iomega Corporation Tape controller with data compression and error correction sharing a common buffer
US5140321A (en) * 1991-09-04 1992-08-18 Prime Computer, Inc. Data compression/decompression method and apparatus
US5455943A (en) * 1992-10-08 1995-10-03 Salient Software, Inc. Method and apparatus for finding longest and closest matching string in history buffer prior to current string
US5426779A (en) * 1991-09-13 1995-06-20 Salient Software, Inc. Method and apparatus for locating longest prior target string matching current string in buffer
US5175543A (en) * 1991-09-25 1992-12-29 Hewlett-Packard Company Dictionary reset performance enhancement for data compression applications
US5243341A (en) * 1992-06-01 1993-09-07 Hewlett Packard Company Lempel-Ziv compression scheme with enhanced adapation
US5355493A (en) * 1991-11-20 1994-10-11 International Business Machines Corporation System for encoding units of entity/relationship data to include prefixes with codes for length, action, and unit identifier
US5726824A (en) * 1991-12-10 1998-03-10 Exabyte Corporation Head positioning in a multi-track magnetic tape recorder/player
CA2077271C (en) * 1991-12-13 1998-07-28 David J. Craft Method and apparatus for compressing data
US5396228A (en) * 1992-01-16 1995-03-07 Mobile Telecommunications Technologies Methods and apparatus for compressing and decompressing paging data
US5229768A (en) * 1992-01-29 1993-07-20 Traveling Software, Inc. Adaptive data compression system
US5371499A (en) * 1992-02-28 1994-12-06 Intersecting Concepts, Inc. Data compression using hashing
US5406278A (en) * 1992-02-28 1995-04-11 Intersecting Concepts, Inc. Method and apparatus for data compression having an improved matching algorithm which utilizes a parallel hashing technique
US5379036A (en) * 1992-04-01 1995-01-03 Storer; James A. Method and apparatus for data compression
US5239298A (en) * 1992-04-17 1993-08-24 Bell Communications Research, Inc. Data compression
US5339076A (en) * 1992-04-27 1994-08-16 Integrated Information Technology Data compression using content addressable memory
US5353024A (en) * 1992-05-01 1994-10-04 Intersecting Concepts, Inc. Method for data compression having an improved encoding algorithm which utilizes a token stacking technique
US5408542A (en) * 1992-05-12 1995-04-18 Apple Computer, Inc. Method and apparatus for real-time lossless compression and decompression of image data
US5664029A (en) * 1992-05-13 1997-09-02 Apple Computer, Inc. Method of disregarding changes in data in a location of a data structure based upon changes in data in nearby locations
US5485526A (en) * 1992-06-02 1996-01-16 Hewlett-Packard Corporation Memory circuit for lossless data compression/decompression dictionary storage
US5818873A (en) * 1992-08-03 1998-10-06 Advanced Hardware Architectures, Inc. Single clock cycle data compressor/decompressor with a string reversal mechanism
US5469161A (en) * 1992-08-13 1995-11-21 International Business Machines Corporation Algorithm for the implementation of Ziv-Lempel data compression using content addressable memory
US5406279A (en) * 1992-09-02 1995-04-11 Cirrus Logic, Inc. General purpose, hash-based technique for single-pass lossless data compression
US5479587A (en) * 1992-09-03 1995-12-26 Hewlett-Packard Company Page printer having adaptive data compression for memory minimization
US5434776A (en) * 1992-11-13 1995-07-18 Microsoft Corporation Method and system for creating multi-lingual computer programs by dynamically loading messages
US5440753A (en) * 1992-11-13 1995-08-08 Motorola, Inc. Variable length string matcher
US5467087A (en) * 1992-12-18 1995-11-14 Apple Computer, Inc. High speed lossless data compression system
US5389922A (en) * 1993-04-13 1995-02-14 Hewlett-Packard Company Compression using small dictionaries with applications to network packets
US5640551A (en) * 1993-04-14 1997-06-17 Apple Computer, Inc. Efficient high speed trie search process
US6357047B1 (en) 1997-06-30 2002-03-12 Avid Technology, Inc. Media pipeline with multichannel video processing and playback
US5351046A (en) * 1993-05-28 1994-09-27 Adcox Thomas A Method and system for compacting binary coded decimal data
US5463389A (en) * 1993-09-24 1995-10-31 Motorola, Inc. Data compression method and device utilizing children arrays
US5406281A (en) * 1993-10-12 1995-04-11 Codex Corporation Encoder/decoder and method for efficient string handling in data compression
US5384568A (en) * 1993-12-02 1995-01-24 Bell Communications Research, Inc. Data compression
US5563595A (en) * 1993-12-23 1996-10-08 International Business Machines Corporation Method and apparatus for compressing data
WO1995018996A2 (en) * 1993-12-30 1995-07-13 Connectix Corporation Lossless data compression system and method
JP3522331B2 (ja) * 1994-04-22 2004-04-26 株式会社セタ データ圧縮方法
US5659635A (en) * 1994-04-26 1997-08-19 Konica Corporation Image processing apparatus for compressing and decompressing image data
US5502439A (en) * 1994-05-16 1996-03-26 The United States Of America As Represented By The United States Department Of Energy Method for compression of binary data
US5635931A (en) * 1994-06-02 1997-06-03 International Business Machines Corporation System and method for compressing data information
AUPM607994A0 (en) * 1994-06-03 1994-06-30 Masters, John A data conversion technique
US5585793A (en) * 1994-06-10 1996-12-17 Digital Equipment Corporation Order preserving data translation
US5532693A (en) * 1994-06-13 1996-07-02 Advanced Hardware Architectures Adaptive data compression system with systolic string matching logic
US5627533A (en) * 1994-08-05 1997-05-06 Hayes Microcomputer Products, Inc. Adjusting encoding table size and memory allocation for data compression in response to input data
US5617517A (en) * 1994-09-20 1997-04-01 Seiko Epson Corporation Two-dimensional method and system for compressing bi-level images
US5758257A (en) 1994-11-29 1998-05-26 Herz; Frederick System and method for scheduling broadcast of and access to video programs and other data using customer profiles
US6460036B1 (en) 1994-11-29 2002-10-01 Pinpoint Incorporated System and method for providing customized electronic newspapers and target advertisements
US5805911A (en) * 1995-02-01 1998-09-08 Microsoft Corporation Word prediction system
US5686912A (en) * 1995-05-08 1997-11-11 Hewlett-Packard Company Data compression method and apparatus with optimized transitions between compressed and uncompressed modes
US5526363A (en) * 1995-05-16 1996-06-11 Telco Systems, Inc. Multicontext compression system with shared data structures
DE69624755T2 (de) * 1995-05-22 2003-04-24 Matsushita Electric Ind Co Ltd Informationssuchgerät für das Suchen von Text, um Zeichenfolgen wiederaufzufinden, die mit einem Schlüsselwort übereinstimmen
US5636369A (en) * 1995-05-26 1997-06-03 Datron/Transco, Inc. Fast pattern-detection machine and method
US5729737A (en) * 1995-07-13 1998-03-17 Armour; William M. Selective data compression system
US5825830A (en) * 1995-08-17 1998-10-20 Kopf; David A. Method and apparatus for the compression of audio, video or other data
US5689255A (en) * 1995-08-22 1997-11-18 Hewlett-Packard Company Method and apparatus for compressing and decompressing image data
JP3273119B2 (ja) * 1995-09-29 2002-04-08 京セラ株式会社 データ圧縮・伸長装置
US5805086A (en) * 1995-10-10 1998-09-08 International Business Machines Corporation Method and system for compressing data that facilitates high-speed data decompression
US5778255A (en) * 1995-10-10 1998-07-07 International Business Machines Corporation Method and system in a data processing system for decompressing multiple compressed bytes in a single machine cycle
US5710719A (en) * 1995-10-19 1998-01-20 America Online, Inc. Apparatus and method for 2-dimensional data compression
US5838963A (en) * 1995-10-25 1998-11-17 Microsoft Corporation Apparatus and method for compressing a data file based on a dictionary file which matches segment lengths
JP3566441B2 (ja) * 1996-01-30 2004-09-15 シャープ株式会社 テキスト圧縮用辞書作成装置
US5892506A (en) * 1996-03-18 1999-04-06 Discreet Logic, Inc. Multitrack architecture for computer-based editing of multimedia sequences
CA2173677C (en) * 1996-04-09 2001-02-20 Benoit Sevigny Processing image data
CA2173804C (en) * 1996-04-10 2002-07-16 Stephane Harnois Processing image data
US5839100A (en) * 1996-04-22 1998-11-17 Wegener; Albert William Lossless and loss-limited compression of sampled data signals
US20030195846A1 (en) 1996-06-05 2003-10-16 David Felger Method of billing a purchase made over a computer network
US7555458B1 (en) 1996-06-05 2009-06-30 Fraud Control System.Com Corporation Method of billing a purchase made over a computer network
US8229844B2 (en) 1996-06-05 2012-07-24 Fraud Control Systems.Com Corporation Method of billing a purchase made over a computer network
US5703581A (en) * 1996-06-14 1997-12-30 Lucent Technologies Inc. Method and apparatus for data compression and decompression
US5654703A (en) * 1996-06-17 1997-08-05 Hewlett-Packard Company Parallel data compression and decompression
US5831558A (en) * 1996-06-17 1998-11-03 Digital Equipment Corporation Method of compressing and decompressing data in a computer system by encoding data using a data dictionary
US5861827A (en) * 1996-07-24 1999-01-19 Unisys Corporation Data compression and decompression system with immediate dictionary updating interleaved with string search
US5883670A (en) * 1996-08-02 1999-03-16 Avid Technology, Inc. Motion video processing circuit for capture playback and manipulation of digital motion video information on a computer
US5951623A (en) * 1996-08-06 1999-09-14 Reynar; Jeffrey C. Lempel- Ziv data compression technique utilizing a dictionary pre-filled with frequent letter combinations, words and/or phrases
US5760716A (en) * 1996-08-21 1998-06-02 Autodesk, Inc. Vector data compression
US6272235B1 (en) * 1997-03-03 2001-08-07 Bacus Research Laboratories, Inc. Method and apparatus for creating a virtual microscope slide
US6404906B2 (en) * 1997-03-03 2002-06-11 Bacus Research Laboratories,Inc. Method and apparatus for acquiring and reconstructing magnified specimen images from a computer-controlled microscope
US5764994A (en) * 1996-09-16 1998-06-09 International Business Machines Corporation Method and system for compressing compiled microcode to be executed within a data processing system
US6038665A (en) * 1996-12-03 2000-03-14 Fairbanks Systems Group System and method for backing up computer files over a wide area computer network
US5794254A (en) * 1996-12-03 1998-08-11 Fairbanks Systems Group Incremental computer file backup using a two-step comparison of first two characters in the block and a signature with pre-stored character and signature sets
JP3540109B2 (ja) * 1996-12-24 2004-07-07 富士通株式会社 データ圧縮方法及び装置
US6009192A (en) * 1996-12-19 1999-12-28 Xerox Corporation Color correction of a compressed image
US6385341B1 (en) * 1997-04-17 2002-05-07 Microsoft Corporation Technique for decoding variable length data codes
US5818368A (en) * 1997-04-18 1998-10-06 Premier Research, Llc Method and apparatus for lossless digital data compression
US6105083A (en) * 1997-06-20 2000-08-15 Avid Technology, Inc. Apparatus and method for controlling transfer of data between and processing of data by interconnected data processing elements
US6366988B1 (en) 1997-07-18 2002-04-02 Storactive, Inc. Systems and methods for electronic data storage management
US6163625A (en) * 1997-10-21 2000-12-19 Canon Kabushiki Kaisha Hybrid image compressor
US6377965B1 (en) 1997-11-07 2002-04-23 Microsoft Corporation Automatic word completion system for partially entered data
US5896321A (en) * 1997-11-14 1999-04-20 Microsoft Corporation Text completion system for a miniature computer
US5955976A (en) * 1997-12-02 1999-09-21 Hughes Electronics Corporation Data compression for use with a communications channel
US6138254A (en) * 1998-01-22 2000-10-24 Micron Technology, Inc. Method and apparatus for redundant location addressing using data compression
JP3421700B2 (ja) 1998-01-22 2003-06-30 富士通株式会社 データ圧縮装置及び復元装置並びにその方法
US6075470A (en) * 1998-02-26 2000-06-13 Research In Motion Limited Block-wise adaptive statistical data compressor
US6212301B1 (en) 1998-06-25 2001-04-03 Accusoft Corporation Systems and methods for digital image compression
US6301394B1 (en) * 1998-09-25 2001-10-09 Anzus, Inc. Method and apparatus for compressing data
US20030195974A1 (en) 1998-12-04 2003-10-16 Ronning Joel A. Apparatus and method for scheduling of search for updates or downloads of a file
US7617124B1 (en) 1998-12-04 2009-11-10 Digital River, Inc. Apparatus and method for secure downloading of files
US7058597B1 (en) 1998-12-04 2006-06-06 Digital River, Inc. Apparatus and method for adaptive fraud screening for electronic commerce transactions
US6624761B2 (en) 1998-12-11 2003-09-23 Realtime Data, Llc Content independent data compression method and system
US6404931B1 (en) * 1998-12-14 2002-06-11 Microsoft Corporation Code book construction for variable to variable length entropy encoding
US6377930B1 (en) 1998-12-14 2002-04-23 Microsoft Corporation Variable to variable length entropy encoding
US6263363B1 (en) 1999-01-28 2001-07-17 Skydesk, Inc. System and method for creating an internet-accessible working replica of a home computer on a host server controllable by a user operating a remote access client computer
US6819271B2 (en) 1999-01-29 2004-11-16 Quickshift, Inc. Parallel compression and decompression system and method having multiple parallel compression and decompression engines
US7538694B2 (en) 1999-01-29 2009-05-26 Mossman Holdings Llc Network device with improved storage density and access speed using compression techniques
US6885319B2 (en) * 1999-01-29 2005-04-26 Quickshift, Inc. System and method for generating optimally compressed data from a plurality of data compression/decompression engines implementing different data compression algorithms
US6603414B1 (en) * 1999-01-29 2003-08-05 Compaq Computer Corporation Method for digital compression of characters
US6289130B1 (en) 1999-02-02 2001-09-11 3Com Corporation Method for real-time lossless data compression of computer data
US6920250B1 (en) 1999-03-04 2005-07-19 Xerox Corporation Additive model for efficient representation of digital documents
US6601104B1 (en) 1999-03-11 2003-07-29 Realtime Data Llc System and methods for accelerated data storage and retrieval
US6611213B1 (en) 1999-03-22 2003-08-26 Lucent Technologies Inc. Method and apparatus for data compression using fingerprinting
US7360252B1 (en) 1999-04-30 2008-04-15 Macrovision Corporation Method and apparatus for secure distribution of software
US6966002B1 (en) 1999-04-30 2005-11-15 Trymedia Systems, Inc. Methods and apparatus for secure distribution of software
US20050246549A1 (en) * 1999-06-09 2005-11-03 Andres Torrubia-Saez Methods and apparatus for secure distribution of software
US6169499B1 (en) * 1999-06-19 2001-01-02 Unisys Corporation LZW data compression/decompression apparatus and method with embedded run-length encoding/decoding
WO2001006660A1 (fr) * 1999-07-16 2001-01-25 Vertex Software Co. Procede de reduction de quantite de donnees et procede d'elaboration de quantite de donnees reduite
US6320523B1 (en) * 1999-07-30 2001-11-20 Unisys Corporation Method and apparatus for reducing the time required for compressing data
US6188333B1 (en) * 1999-08-12 2001-02-13 Unisys Corporation LZW data compression apparatus and method using look-ahead mathematical run processing
US7630986B1 (en) 1999-10-27 2009-12-08 Pinpoint, Incorporated Secure data interchange
US6919967B1 (en) 1999-11-18 2005-07-19 Hewlett-Packard Development Company, L.P. Printing performance enhancements for variable data publishing
WO2001050612A1 (en) 2000-01-05 2001-07-12 Realnetworks, Inc. Systems and methods for multiple-file data compression
US20010047473A1 (en) 2000-02-03 2001-11-29 Realtime Data, Llc Systems and methods for computer initialization
US20070271191A1 (en) * 2000-03-09 2007-11-22 Andres Torrubia-Saez Method and apparatus for secure distribution of software
FR2806227B1 (fr) * 2000-03-09 2003-09-05 Auteuil Participation Et Conse Procede pour le codage d'images
US6236341B1 (en) 2000-03-16 2001-05-22 Lucent Technologies Inc. Method and apparatus for data compression of network packets employing per-packet hash tables
US6388584B1 (en) 2000-03-16 2002-05-14 Lucent Technologies Inc. Method and apparatus for data compression of network packets
GB0007974D0 (en) * 2000-04-01 2000-05-17 Discreet Logic Inc Processing image data
US6522784B1 (en) 2000-04-11 2003-02-18 International Business Machines Corporation Enhanced compression of gray-level images
US6307488B1 (en) 2000-05-04 2001-10-23 Unisys Corporation LZW data compression and decompression apparatus and method using grouped data characters to reduce dictionary accesses
US6983074B1 (en) 2000-06-14 2006-01-03 Adobe Systems Incorporated Data compression system and technique
JP2004507145A (ja) 2000-08-15 2004-03-04 シーゲイト テクノロジー エルエルシー オペレーティング・コードのデュアル・モード圧縮
US6348881B1 (en) * 2000-08-29 2002-02-19 Philips Electronics No. America Corp. Efficient hardware implementation of a compression algorithm
US8692695B2 (en) 2000-10-03 2014-04-08 Realtime Data, Llc Methods for encoding and decoding data
US9143546B2 (en) 2000-10-03 2015-09-22 Realtime Data Llc System and method for data feed acceleration and encryption
US6359548B1 (en) 2000-10-16 2002-03-19 Unisys Corporation Data compression and decompression method and apparatus with embedded filtering of infrequently encountered strings
US6792423B1 (en) * 2000-11-28 2004-09-14 International Business Machines Corporation Hybrid longest prefix match and fixed match searches
US6829289B1 (en) * 2000-12-05 2004-12-07 Gossett And Gunter, Inc. Application of a pseudo-randomly shuffled hadamard function in a wireless CDMA system
US8385470B2 (en) * 2000-12-05 2013-02-26 Google Inc. Coding a signal with a shuffled-Hadamard function
US8374218B2 (en) 2000-12-05 2013-02-12 Google Inc. Combining signals with a shuffled-hadamard function
US6883087B1 (en) 2000-12-15 2005-04-19 Palm, Inc. Processing of binary data for compression
SE0004736D0 (sv) * 2000-12-20 2000-12-20 Ericsson Telefon Ab L M Mapping system and method
US6606040B2 (en) 2001-02-13 2003-08-12 Mosaid Technologies, Inc. Method and apparatus for adaptive data compression
US7386046B2 (en) 2001-02-13 2008-06-10 Realtime Data Llc Bandwidth sensitive data compression and decompression
US20020116672A1 (en) * 2001-02-19 2002-08-22 Ando Electric Co., Ltd. Pattern data transmission device and pattern data transmission method
US6392568B1 (en) * 2001-03-07 2002-05-21 Unisys Corporation Data compression and decompression method and apparatus with embedded filtering of dynamically variable infrequently encountered strings
JP3990115B2 (ja) * 2001-03-12 2007-10-10 株式会社東芝 サーバ側プロキシ装置及びプログラム
US6426711B1 (en) * 2001-05-14 2002-07-30 Unisys Corporation Character table implemented data compression method and apparatus
JP3913004B2 (ja) 2001-05-28 2007-05-09 キヤノン株式会社 データ圧縮方法及び装置及びコンピュータプログラム及び記憶媒体
US7164369B2 (en) 2001-06-19 2007-01-16 Sharp Laboratories Of America, Inc. System for improving storage efficiency of digital files
US6400286B1 (en) 2001-06-20 2002-06-04 Unisys Corporation Data compression method and apparatus implemented with limited length character tables
US7382878B2 (en) * 2001-06-22 2008-06-03 Uponus Technologies, Llc System and method for data encryption
US20030018647A1 (en) * 2001-06-29 2003-01-23 Jan Bialkowski System and method for data compression using a hybrid coding scheme
US6707400B2 (en) * 2001-08-02 2004-03-16 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for fast longest match search
US20030088537A1 (en) * 2001-08-08 2003-05-08 Nec Eluminant Technologies, Inc. High speed data compression and decompression apparatus and method
US7062088B1 (en) 2001-08-28 2006-06-13 Adobe Systems Incorporated Variable lossy compression
WO2003021970A1 (en) * 2001-09-04 2003-03-13 Faroudja Cognition Systems, Inc. Low bandwidth video compression
US6650261B2 (en) 2001-09-06 2003-11-18 Xerox Corporation Sliding window compression method utilizing defined match locations
US7185041B1 (en) 2001-10-05 2007-02-27 Unisys Corporation Circuit and method for high-speed execution of modulo division
US6466144B1 (en) * 2001-11-30 2002-10-15 Unisys Corporation Data decompressor for use with a data compressor implemented with limited length character tables and compact string codes
WO2003063521A2 (en) 2002-01-23 2003-07-31 M-Spatial Limited Routing framework
US7085271B2 (en) * 2002-03-14 2006-08-01 Hewlett-Packard Development Company, L.P. Method and system for performing flow based hash transformation to generate hash pointers for a network device
US6628211B1 (en) 2002-03-19 2003-09-30 Unisys Corporation Prefix table implemented data compression method and apparatus
US7126948B2 (en) * 2002-03-21 2006-10-24 Hewlett-Packard Development Company, L.P. Method and system for performing a hash transformation to generate a hash pointer for an address input by using rotation
LV13012B (en) * 2002-03-22 2003-06-20 Datoru Drosibas Tehnologijas S Method and apparatus for lossless compression and decompression of data
US7039106B2 (en) * 2002-03-25 2006-05-02 Intel Corporation Processing digital data prior to compression
US6501395B1 (en) 2002-04-10 2002-12-31 Hewlett-Packard Company System, method and computer readable medium for compressing a data sequence
US6624762B1 (en) 2002-04-11 2003-09-23 Unisys Corporation Hardware-based, LZW data compression co-processor
US6650259B1 (en) * 2002-05-06 2003-11-18 Unisys Corporation Character table implemented data decompression method and apparatus
US7154848B2 (en) * 2002-05-29 2006-12-26 General Dynamics Corporation Methods and apparatus for generating a multiplexed communication signal
US7280497B2 (en) * 2002-08-02 2007-10-09 General Dynamics Corporation Methods and apparatus for coupling an earth terminal to a satellite
US7280496B2 (en) * 2002-08-02 2007-10-09 General Dynamics Corporation Methods and apparatus for coupling a satellite to an earth terminal
ES2334934T3 (es) 2002-09-04 2010-03-17 Microsoft Corporation Codificacion de entropia por adaptacion de codificacion entre modalidades de nivel y de longitud de sucesion y nivel.
US6714145B1 (en) 2002-09-26 2004-03-30 Richard Marques Method and apparatus for integer-based encoding and decoding of bits
US6670897B1 (en) 2002-10-03 2003-12-30 Motorola, Inc. Compression/decompression techniques based on tokens and Huffman coding
US6819272B2 (en) * 2002-11-06 2004-11-16 Hewlett-Packard Development Company, L.P. System, method and computer readable medium for compressing a data sequence for partial decompressing
US7609722B2 (en) * 2003-02-14 2009-10-27 Atheros Communications, Inc. Method and apparatus for transmitting and receiving compressed frame of data over a wireless channel
GB2400287A (en) * 2003-04-02 2004-10-06 Autodesk Canada Inc Three-Dimensional Image Compositing
GB2400289A (en) * 2003-04-04 2004-10-06 Autodesk Canada Inc Selecting functions in a Context-Sensitive Menu
US7403561B2 (en) * 2003-04-04 2008-07-22 Avid Technology, Inc. Fixed bit rate, intraframe compression and decompression of video
GB2400290A (en) * 2003-04-04 2004-10-06 Autodesk Canada Inc Multidimensional image data processing in a hierarchical dat structure
US7433519B2 (en) * 2003-04-04 2008-10-07 Avid Technology, Inc. Bitstream format for compressed image data
US8639760B2 (en) * 2003-06-10 2014-01-28 Hewlett-Packard Development Company, L.P. Hard imaging devices, hard imaging systems, articles of manufacture, hard imaging device electronic mail processing methods
US6879270B1 (en) 2003-08-20 2005-04-12 Hewlett-Packard Development Company, L.P. Data compression in multiprocessor computers
US7394410B1 (en) 2004-02-13 2008-07-01 Samplify Systems, Inc. Enhanced data converters using compression and decompression
US7088276B1 (en) 2004-02-13 2006-08-08 Samplify Systems Llc Enhanced data converters using compression and decompression
US7009533B1 (en) 2004-02-13 2006-03-07 Samplify Systems Llc Adaptive compression and decompression of bandlimited signals
US7071852B1 (en) 2004-02-13 2006-07-04 Samplify Systems Llc Enhanced test and measurement instruments using compression and decompression
US7079051B2 (en) * 2004-03-18 2006-07-18 James Andrew Storer In-place differential compression
WO2005104456A1 (ja) * 2004-03-31 2005-11-03 Ipt Corporation 固定長データの検索装置および検索管理方法
US20050256722A1 (en) * 2004-05-14 2005-11-17 Clark Adam L System and method for lossless audio encoding and decoding
US7664173B2 (en) * 2004-06-07 2010-02-16 Nahava Inc. Method and apparatus for cached adaptive transforms for compressing data streams, computing similarity, and recognizing patterns
GB0416481D0 (en) 2004-07-23 2004-08-25 Hewlett Packard Development Co Method, apparatus and system for data block rearrangement for LZ data compression
US7256715B1 (en) * 2005-01-07 2007-08-14 Altera Corporation Data compression using dummy codes
US6970110B1 (en) 2005-01-08 2005-11-29 Collins Dennis G Probability centrifuge algorithm with minimum laterally adiabatically-reduced Fisher information calculation
US20060200481A1 (en) * 2005-03-04 2006-09-07 Khalid Goyan Method and system for data optimization and protection in DSP firmware
US7167115B1 (en) 2005-08-26 2007-01-23 American Megatrends, Inc. Method, apparatus, and computer-readable medium for data compression and decompression utilizing multiple dictionaries
US8489562B1 (en) 2007-11-30 2013-07-16 Silver Peak Systems, Inc. Deferred data storage
US8929402B1 (en) * 2005-09-29 2015-01-06 Silver Peak Systems, Inc. Systems and methods for compressing packet data by predicting subsequent data
US8811431B2 (en) 2008-11-20 2014-08-19 Silver Peak Systems, Inc. Systems and methods for compressing packet data
US7164370B1 (en) 2005-10-06 2007-01-16 Analog Devices, Inc. System and method for decoding data compressed in accordance with dictionary-based compression schemes
US8674855B2 (en) * 2006-01-13 2014-03-18 Essex Pa, L.L.C. Identification of text
US7365658B2 (en) * 2006-02-28 2008-04-29 The Board Of Trustees Of The University Of Arkansas Method and apparatus for lossless run-length data encoding
DE102006011022A1 (de) * 2006-03-09 2007-10-25 Netviewer Gmbh Zweidimensionales adaptives Bildkompressionsverfahren
CA3074180C (en) 2006-03-27 2023-03-21 The Nielsen Company (Us), Llc Methods and systems to meter media content presented on a wireless communication device
US7586424B2 (en) * 2006-06-05 2009-09-08 Donald Martin Monro Data coding using an exponent and a residual
US7770091B2 (en) * 2006-06-19 2010-08-03 Monro Donald M Data compression for use in communication systems
US20080017227A1 (en) * 2006-07-19 2008-01-24 Ward Barry D Walking aid apparatus
US8755381B2 (en) 2006-08-02 2014-06-17 Silver Peak Systems, Inc. Data matching using flow based packet data storage
US8885632B2 (en) 2006-08-02 2014-11-11 Silver Peak Systems, Inc. Communications scheduler
DE102006047465A1 (de) 2006-10-07 2008-04-10 Deutsche Telekom Ag Verfahren und Vorrichtung zur Kompression und Dekompression digitaler Daten auf elektronischem Wege unter Verwendung einer Kontextgrammatik
US20090070877A1 (en) * 2006-12-18 2009-03-12 Carol Davids Method for securing streaming multimedia network transmissions
US8453241B2 (en) * 2006-12-18 2013-05-28 Illinois Institute Of Technology Method for securing streaming multimedia network transmissions
US7814284B1 (en) 2007-01-18 2010-10-12 Cisco Technology, Inc. Redundancy elimination by aggregation of multiple chunks
US7834784B1 (en) 2007-01-18 2010-11-16 Cisco Technology, Inc. Data redundancy elimination mechanism including fast lookup of data patterns exhibiting spatial locality
US7439887B2 (en) * 2007-02-13 2008-10-21 Seiko Epson Corporation Method and apparatus for GIF decompression using fixed-size codeword table
US20080256136A1 (en) * 2007-04-14 2008-10-16 Jerremy Holland Techniques and tools for managing attributes of media content
US20080256448A1 (en) * 2007-04-14 2008-10-16 Nikhil Mahesh Bhatt Multi-Frame Video Display Method and Apparatus
US8751022B2 (en) * 2007-04-14 2014-06-10 Apple Inc. Multi-take compositing of digital media assets
US20080263433A1 (en) * 2007-04-14 2008-10-23 Aaron Eppolito Multiple version merge for media production
US20090055395A1 (en) * 2007-08-24 2009-02-26 Texas Instruments Incorporated Method and Apparatus for XML Data Processing
US8458460B2 (en) * 2007-09-27 2013-06-04 Intel Corporation Digest generation from instruction op-codes
KR100945247B1 (ko) * 2007-10-04 2010-03-03 한국전자통신연구원 가상 환경을 이용한 비실행 파일 내의 악성 코드 분석 방법및 장치
US8514927B2 (en) * 2007-11-20 2013-08-20 Texas Instruments Incorporated Compression code for transferring rate matched data between devices
US8307115B1 (en) 2007-11-30 2012-11-06 Silver Peak Systems, Inc. Network memory mirroring
CN100595596C (zh) * 2007-12-12 2010-03-24 北京四方继保自动化股份有限公司 电网广域测量系统(wams)中动态数据压缩存储方法
US20090198716A1 (en) * 2008-02-04 2009-08-06 Shawn Allen Howarth Method of building a compression dictionary during data populating operations processing
US8503991B2 (en) 2008-04-03 2013-08-06 The Nielsen Company (Us), Llc Methods and apparatus to monitor mobile devices
US8179974B2 (en) 2008-05-02 2012-05-15 Microsoft Corporation Multi-level representation of reordered transform coefficients
US10164861B2 (en) 2015-12-28 2018-12-25 Silver Peak Systems, Inc. Dynamic monitoring and visualization for network health characteristics
US8743683B1 (en) 2008-07-03 2014-06-03 Silver Peak Systems, Inc. Quality of service using multiple flows
US10805840B2 (en) 2008-07-03 2020-10-13 Silver Peak Systems, Inc. Data transmission via a virtual wide area network overlay
US9717021B2 (en) 2008-07-03 2017-07-25 Silver Peak Systems, Inc. Virtual network overlay
US7791513B2 (en) * 2008-10-06 2010-09-07 Donald Martin Monro Adaptive combinatorial coding/decoding with specified occurrences for electrical computers and digital data processing systems
US7864086B2 (en) 2008-10-06 2011-01-04 Donald Martin Monro Mode switched adaptive combinatorial coding/decoding for electrical computers and digital data processing systems
US7786907B2 (en) 2008-10-06 2010-08-31 Donald Martin Monro Combinatorial coding/decoding with specified occurrences for electrical computers and digital data processing systems
US7786903B2 (en) 2008-10-06 2010-08-31 Donald Martin Monro Combinatorial coding/decoding with specified occurrences for electrical computers and digital data processing systems
US7764202B2 (en) * 2008-11-26 2010-07-27 Red Hat, Inc. Lossless data compression with separated index values and literal values in output stream
US7750826B2 (en) * 2008-11-26 2010-07-06 Red Hat, Inc. Data structure management for lossless data compression
US7864085B2 (en) * 2009-02-05 2011-01-04 Lsi Corporation Data compression method and apparatus
EP2402882A4 (en) * 2009-02-27 2014-09-17 Fujitsu Ltd PROGRAM, DEVICE AND METHOD FOR ELECTRONIC SIGNATURE
US8179291B2 (en) * 2009-05-04 2012-05-15 International Business Machines Corporation Method and system for compression of logical data objects for storage
US7944375B2 (en) * 2009-06-02 2011-05-17 International Business Machines Corporation Wear reduction methods by using compression/decompression techniques with fast random access
CN101572552B (zh) * 2009-06-11 2012-07-18 哈尔滨工业大学 基于内容可寻址存储器的高速无损数据压缩系统
DE102009028743B4 (de) * 2009-08-20 2011-06-09 Robert Bosch Gmbh Verfahren und Steuergerät zur Entzerrung eines Kamerabildes
US7982636B2 (en) * 2009-08-20 2011-07-19 International Business Machines Corporation Data compression using a nested hierachy of fixed phrase length static and dynamic dictionaries
RU2473960C2 (ru) * 2010-05-26 2013-01-27 Учреждение Российской академии наук Институт проблем управления им. В.А. Трапезникова РАН Способ нахождения максимальных повторяющихся участков последовательности символов конечного алфавита и способ вычисления вспомогательного массива
US9043676B2 (en) * 2010-12-28 2015-05-26 International Business Machines Corporation Parity error recovery method for string search CAM
US9177500B2 (en) 2011-01-31 2015-11-03 Global Oled Technology Llc Display with secure decryption of image signals
US20120194564A1 (en) 2011-01-31 2012-08-02 White Christopher J Display with secure decompression of image signals
EP2501133A3 (de) 2011-03-16 2013-07-31 Basler AG Verfahren und Vorrichtung zur Bandbreitenreduktion für Bilddaten
US8456331B2 (en) 2011-04-15 2013-06-04 Cavium, Inc. System and method of compression and decompression
US8350732B2 (en) * 2011-05-11 2013-01-08 Cavium, Inc. Compression with adjustable quality/bandwidth capability
US9130991B2 (en) 2011-10-14 2015-09-08 Silver Peak Systems, Inc. Processing data packets in performance enhancing proxy (PEP) environment
US9626224B2 (en) 2011-11-03 2017-04-18 Silver Peak Systems, Inc. Optimizing available computing resources within a virtual environment
JP5766588B2 (ja) 2011-11-16 2015-08-19 クラリオン株式会社 検索端末装置、検索サーバ装置、及びセンタ連携型検索システム
US8779950B2 (en) 2012-03-05 2014-07-15 Dcba, Llc Command encoded data compression
WO2013171152A1 (en) 2012-05-18 2013-11-21 Telefonica, S.A. A method and a system for csi reporting in lte networks according to the mobility of the user equipment
JP5826114B2 (ja) 2012-05-25 2015-12-02 クラリオン株式会社 データ解凍装置、データ圧縮装置、データの解凍プログラム、データの圧縮プログラム、及び、圧縮データ配信システム
CN104123309B (zh) * 2013-04-28 2017-08-25 国际商业机器公司 用于数据管理的方法和系统
US9176973B1 (en) 2013-06-14 2015-11-03 Timmes, Inc. Recursive-capable lossless compression mechanism
US9241044B2 (en) 2013-08-28 2016-01-19 Hola Networks, Ltd. System and method for improving internet communication by using intermediate nodes
US10410244B2 (en) 2013-11-13 2019-09-10 Bi Science (2009) Ltd Behavioral content discovery
US9767265B2 (en) * 2014-05-06 2017-09-19 Anchor Id, Inc. Authentication with parental control functionality
US9640376B1 (en) 2014-06-16 2017-05-02 Protein Metrics Inc. Interactive analysis of mass spectrometry data
US9948496B1 (en) 2014-07-30 2018-04-17 Silver Peak Systems, Inc. Determining a transit appliance for data traffic to a software service
US9875344B1 (en) 2014-09-05 2018-01-23 Silver Peak Systems, Inc. Dynamic monitoring and authorization of an optimization device
US9385751B2 (en) 2014-10-07 2016-07-05 Protein Metrics Inc. Enhanced data compression for sparse multidimensional ordered series data
US9543980B2 (en) 2014-10-10 2017-01-10 Massachusettes Institute Of Technology Systems and methods for model-free compression and model-based decompression
US10354421B2 (en) 2015-03-10 2019-07-16 Protein Metrics Inc. Apparatuses and methods for annotated peptide mapping
US11057446B2 (en) 2015-05-14 2021-07-06 Bright Data Ltd. System and method for streaming content from multiple servers
US10911065B2 (en) * 2015-10-20 2021-02-02 Sinan Karaca Computer system and method including selectively compressing data files and directories based on an operator indication and representing the amount of available free space
KR102379182B1 (ko) 2015-11-20 2022-03-24 삼성전자주식회사 연속 데이터 압축 장치 및 방법
EP3219356A1 (en) 2016-03-14 2017-09-20 Max-Planck-Gesellschaft zur Förderung der Wissenschaften e.V. Apparatus for applying electric pulses to living myocardial tissue
US10432484B2 (en) 2016-06-13 2019-10-01 Silver Peak Systems, Inc. Aggregating select network traffic statistics
US9967056B1 (en) 2016-08-19 2018-05-08 Silver Peak Systems, Inc. Forward packet recovery with constrained overhead
US9742434B1 (en) 2016-12-23 2017-08-22 Mediatek Inc. Data compression and de-compression method and data compressor and data de-compressor
US10319573B2 (en) 2017-01-26 2019-06-11 Protein Metrics Inc. Methods and apparatuses for determining the intact mass of large molecules from mass spectrographic data
US10892978B2 (en) 2017-02-06 2021-01-12 Silver Peak Systems, Inc. Multi-level learning for classifying traffic flows from first packet data
US11044202B2 (en) 2017-02-06 2021-06-22 Silver Peak Systems, Inc. Multi-level learning for predicting and classifying traffic flows from first packet data
US10257082B2 (en) 2017-02-06 2019-04-09 Silver Peak Systems, Inc. Multi-level learning for classifying traffic flows
US10771394B2 (en) 2017-02-06 2020-09-08 Silver Peak Systems, Inc. Multi-level learning for classifying traffic flows on a first packet from DNS data
CN107180018B (zh) * 2017-05-17 2018-11-20 上海兆芯集成电路有限公司 基于散列的加速压缩方法以及使用此方法的装置
US10097202B1 (en) * 2017-06-20 2018-10-09 Samsung Electronics Co., Ltd. SSD compression aware
US10340945B2 (en) 2017-07-24 2019-07-02 iDensify LLC Memory compression method and apparatus
US11626274B2 (en) 2017-08-01 2023-04-11 Protein Metrics, Llc Interactive analysis of mass spectrometry data including peak selection and dynamic labeling
US10546736B2 (en) 2017-08-01 2020-01-28 Protein Metrics Inc. Interactive analysis of mass spectrometry data including peak selection and dynamic labeling
US11212210B2 (en) 2017-09-21 2021-12-28 Silver Peak Systems, Inc. Selective route exporting using source type
US10510521B2 (en) 2017-09-29 2019-12-17 Protein Metrics Inc. Interactive analysis of mass spectrometry data
US10637721B2 (en) 2018-03-12 2020-04-28 Silver Peak Systems, Inc. Detecting path break conditions while minimizing network overhead
US11640901B2 (en) 2018-09-05 2023-05-02 Protein Metrics, Llc Methods and apparatuses for deconvolution of mass spectrometry data
US11323548B2 (en) 2019-01-20 2022-05-03 Arilou Information Security Technologies Ltd. System and method for data compression based on data position in frames structure
US11290708B2 (en) 2019-02-19 2022-03-29 Edgy Bees Ltd. Estimating real-time delay of a video data stream
US11346844B2 (en) 2019-04-26 2022-05-31 Protein Metrics Inc. Intact mass reconstruction from peptide level data and facilitated comparison with experimental intact observation
JP6614735B1 (ja) 2019-05-07 2019-12-04 国立大学法人 筑波大学 データの圧縮及び解凍方法、データ圧縮方法、データ圧縮装置、データ圧縮プログラム、データ解凍方法、データ解凍装置、データ解凍プログラム
WO2022047368A1 (en) 2020-08-31 2022-03-03 Protein Metrics Inc. Data compression for multidimensional time series data

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5719857A (en) * 1980-07-09 1982-02-02 Nec Corp Data compression storage device
JPS57101937A (en) * 1980-12-16 1982-06-24 Nec Corp Data storage device

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4021782A (en) * 1974-01-07 1977-05-03 Hoerning John S Data compaction system and apparatus
US4366551A (en) * 1977-06-24 1982-12-28 Holtz Klaus E Associative memory search system
DE3118676A1 (de) * 1981-05-12 1982-12-02 Heinz Karl Eckhart Dr Jur Verfahren zur kompression redundanter folgen serieller datenelemente
US4464650A (en) * 1981-08-10 1984-08-07 Sperry Corporation Apparatus and method for compressing data signals and restoring the compressed data signals
JPS59231683A (ja) * 1983-06-01 1984-12-26 インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン データ圧縮方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5719857A (en) * 1980-07-09 1982-02-02 Nec Corp Data compression storage device
JPS57101937A (en) * 1980-12-16 1982-06-24 Nec Corp Data storage device

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02233025A (ja) * 1989-01-23 1990-09-14 Codex Corp 可変長ストリング符合装置
JPH03204232A (ja) * 1989-12-28 1991-09-05 Internatl Business Mach Corp <Ibm> 圧縮データの符号化方法
JPH03204233A (ja) * 1989-12-28 1991-09-05 Internatl Business Mach Corp <Ibm> データ圧縮方法
JPH03204234A (ja) * 1989-12-28 1991-09-05 Internatl Business Mach Corp <Ibm> 圧縮データ復元方法
JPH03204235A (ja) * 1989-12-28 1991-09-05 Internatl Business Mach Corp <Ibm> 圧縮データの復号方法
WO1991013395A1 (en) * 1990-02-26 1991-09-05 Fujitsu Limited Data compression and restoration method and device therefor
JPH04156111A (ja) * 1990-10-19 1992-05-28 Fujitsu Ltd データ圧縮方法
JPH04156109A (ja) * 1990-10-19 1992-05-28 Fujitsu Ltd Zl符号化方法
JPH04156110A (ja) * 1990-10-19 1992-05-28 Fujitsu Ltd データ圧縮方法
JPH06232914A (ja) * 1992-12-04 1994-08-19 Internatl Business Mach Corp <Ibm> 準静的データを圧縮し展開する方法
JPH08274649A (ja) * 1995-03-22 1996-10-18 Internatl Business Mach Corp <Ibm> Lempel−Zivタイプ・アルゴリズムを用いたデータ圧縮装置
US6268809B1 (en) 1997-12-05 2001-07-31 Kabushiki Kaisha Toshiba Data compression method for efficiently compressing data based on data periodicity
WO2004084415A1 (ja) * 1997-12-05 2004-09-30 Akira Saito データの周期性に着目して効率的に圧縮するデータ圧縮方法
WO2017163896A1 (ja) 2016-03-22 2017-09-28 パナソニックIpマネジメント株式会社 ログ収集装置、ログ生成装置、およびログ収集方法
US10469101B2 (en) 2016-03-22 2019-11-05 Panasonic Intellectual Property Management Co., Ltd. Log collection device, log generation device, and log collection method

Also Published As

Publication number Publication date
EP0129439A1 (en) 1984-12-27
JPH07249996A (ja) 1995-09-26
US4558302B1 (ja) 1994-01-04
JP2610084B2 (ja) 1997-05-14
JPH0568893B2 (ja) 1993-09-29
EP0129439B1 (en) 1989-02-01
JPH08237138A (ja) 1996-09-13
CA1223965A (en) 1987-07-07
DE3476617D1 (en) 1989-03-09
US4558302A (en) 1985-12-10

Similar Documents

Publication Publication Date Title
JPS60116228A (ja) ディジタル信号ストリーム圧縮方法及び圧縮装置
US5608396A (en) Efficient Ziv-Lempel LZI data compression system using variable code fields
US5818873A (en) Single clock cycle data compressor/decompressor with a string reversal mechanism
JP3229180B2 (ja) データ圧縮システム
AU637826B2 (en) Improved data compression apparatus
JP2502469B2 (ja) 文字デ―タを圧縮し圧縮済みデ―タを展開するための静的辞書構造を提供する方法および手段
US6829695B1 (en) Enhanced boolean processor with parallel input
US5563595A (en) Method and apparatus for compressing data
CA2077271C (en) Method and apparatus for compressing data
US8988257B2 (en) Data compression utilizing variable and limited length codes
US5087913A (en) Short-record data compression and decompression system
US6334123B1 (en) Index relational processor
CN111294053B (zh) 硬件友好的数据压缩方法、系统及装置
US5874908A (en) Method and apparatus for encoding Lempel-Ziv 1 variants
JP2979106B2 (ja) データ圧縮
US5610603A (en) Sort order preservation method used with a static compression dictionary having consecutively numbered children of a parent
US6535150B1 (en) Method and apparatus for implementing run-length compression
JP2003510881A (ja) データを展開するのに要する時間を短縮するための方法と装置
JPH10261969A (ja) データ圧縮方法および装置
JP3242795B2 (ja) データ処理装置及びデータ処理方法
JP3038234B2 (ja) データ圧縮装置の辞書検索方式
JP3132774B2 (ja) データ圧縮・復元装置
JP2999561B2 (ja) データ圧縮及び復元装置
JPH05241776A (ja) データ圧縮方式
JP2003318739A (ja) データシーケンスを圧縮するシステム、方法、およびコンピュータ読み取り可能媒体

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term