JPH03204232A - 圧縮データの符号化方法 - Google Patents

圧縮データの符号化方法

Info

Publication number
JPH03204232A
JPH03204232A JP2313006A JP31300690A JPH03204232A JP H03204232 A JPH03204232 A JP H03204232A JP 2313006 A JP2313006 A JP 2313006A JP 31300690 A JP31300690 A JP 31300690A JP H03204232 A JPH03204232 A JP H03204232A
Authority
JP
Japan
Prior art keywords
dictionary
identifier
literal
history
data
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
JP2313006A
Other languages
English (en)
Other versions
JPH0779262B2 (ja
Inventor
Michael E Nagy
マイケル・イー・ナージ
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH03204232A publication Critical patent/JPH03204232A/ja
Publication of JPH0779262B2 publication Critical patent/JPH0779262B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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
    • 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/3086Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method employing a sliding window, e.g. LZ77

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

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

Description

【発明の詳細な説明】 A、産業上の利用分野 本発明は、一般にデータ処理方法、より具体的には伝送
または記憶用に圧縮データを符号化する方法に関するも
のである。
B、従来の技術及びその課題 圧縮とは、データの表現を最小にするためのデータの符
号化である。たとえば、圧縮を用いて、ファイルの必要
記憶容量を減少させ、チャネル上の通信速度を高める、
もしくは安全保護向上のための暗号化に先だって冗長度
を減少させることが可能になる。
データ圧縮の1方法が、ジブ(Ziv)  とレンペル
(Lempel)の論文”A Universal A
lgorithmFor 5equential Da
ta Compression″、 IEEETran
sactions on rnformation T
heory、 V o 1 。
IT−23、No、3、pp、337−43.1977
年5月に開示されている。レンベルージブ・アルゴリズ
ムは基本的に、データ列の履歴を後方参照し、一致が見
つかったとき、実際のデータを短縮された符号で置き換
える機構である。シンベル−ジブ法の種々の実施様態で
は、512(小テーブル)、1024(中テーブル)ま
たは4096(大テーブル)の特定の列または後方参照
を辞典または辞書に記録する。これらは、辞典に挿入さ
れる列の選択方法が異なる。
基本的なレンペルージブ・アルゴリズムに対スる様々な
改良がある。1つは、バイトまたは文字拡張の改良であ
り、辞典内の各列は、辞典内の他の列の末尾に1つまた
は複数のバイトを追加したものと同じである。もう1つ
は、列拡張しンペルージブ・アルゴリズムであり、辞典
内の各列は、辞典内の他の2つの列を連結したものであ
る。はとんどの状況では、列拡張技法の方がよい圧縮結
果をもたらす。
大テーブル列拡張しンベルージブ・アルゴリズムは、優
れた汎用適応データ圧縮技法であると一般に考えられて
いる。大テーブル列拡張しンペルージブ技法の欠点は、
圧縮を行う機械内にかなりのメモリと高速の中央演算処
理装置を必要とすることである。復元は、メモリ及びプ
ロセッサ・サイクルの点で相対的に低コストである。多
数の並列なデータ・ストリームの圧縮を支援しなければ
ならない装置では、一般にメモリの方が実行速度よりも
大きな問題である。これは、並列なデータ・ストリーム
のすべてが同時に活動状態であるわけではなく、シたが
ってCPU負荷が最悪の場合に近くなることがほとんど
ないためである。また、CPUに対する要求が過度にな
ったときの性能低下は、漸次的であり、破局的ではない
。すなわち、ある装置が支援しなければならないデータ
・ストリームの数は、プロセッサの実行速度の弱い関数
である。それとは対照的に、適応圧縮テーブル専用のメ
モリは、データ・ストリームが遊休状態のときでも割り
当てられていなければならない。このため、特定の装置
が支援できるデータ・ストリームの数が効果的に制限さ
れる。
C0課題を解決するための手段 本発明の適応圧縮方法は、2つのデータ構造、すなわち
履歴バッファおよび辞典(レキシコン)を効率的に利用
して、通信またはデータ記憶環境に適した、汎用のスト
リーム本位のデータ圧縮を実行する。この場合、列とは
、を眼側の記号の集合のうちから選択された一連の順序
付けられたデータ記号であると定義する。
履歴バッファとは、最も最近に圧縮機能を通過した未圧
縮のデータの正確な記録である。辞典とは、長さが1以
上の列の集合である。
本発明の圧縮方法は、入力データ・ストリームを履歴参
照、辞典参照およびリテラル参照のシーケンスに変換す
ると同時に、圧縮効率が最大になるように履歴バッファ
と辞典をインクレメンタルに更新することによって動作
する。圧縮機構に入るデータおよび復元機構から出るデ
ータは、8ビット・バイトとして取り扱われるが、圧縮
機構から復元機構へ流れる圧縮済みデータは自由形式の
ビット・ストリームである。本発明の符号化方法は、参
照の形式または性格を一意的に識別し、圧縮効率が最大
となるように参照の長さを定義し、同時に前記の変換操
作を逆にして元のデータ・ストリームを正確に再構成す
るのに十分な情報を、対をなす復元方法に提供する。こ
の復元機能は、圧縮されたデータ・ストリーム自体以外
の追加データは必要としない。
本発明の符号化方法の1様態では、各リテラル参照にリ
テラル識別子を割り当て、各履歴参照に履歴識別子を割
り当て、各辞典参照に辞典識別子を割り当てる。そして
、上記参照に上記識別子を割り当てたデータ・ストリー
ムを発行(emit)する。本発明の符号化方法の別の
様態では、入力データ・ストリームの記号を履歴バッフ
ァに記録する。
記号の列が履歴バッファ内で複製されるとき、履歴識別
子、オフセット値および長さの値を含む履歴参照が発行
される。発行された履歴参照によって表される列は、辞
典に記録される。記号の列が辞典内で複製されるとき、
辞典識別子および指標値を含む辞典参照が発行される。
記号が履歴バッファ内でも辞典内でも複製されないとき
、リテラル識別子および記号自体を含むリテラル参照が
発行される。入力データ・ストリームが終りになると、
リテラル識別子が発行され、それによってデータ・スト
リームの終りを知らせる。
D、実施例 本発明の圧縮方法を第1図に図示する。本発明の圧縮方
法の最初のステップであるブロック11では、履歴バッ
ファ、辞典およびトークンをクリアする。トークンは、
データ・シーケンスの記号が付加される、作業用のサブ
ストリングである。
トークン、履歴バッファおよび辞典は最初は空である。
履歴バッファは、0の基底から始まる正の整数を指標と
する、記号値の1次元配列として実施される。履歴バッ
ファの長さは、ある値に固定される。履歴バッファの長
さはちょうど2の累乗であることが好ましい。好ましい
実施例では、多くの形式の2進データ・ファイルおよび
テキスト・ファイルで、8ビット・パイ)2048個の
履歴バッファ長がうまく働く。
履歴バッファ内の記号列は、オフセット値と長さ値を含
む履歴参照によって一義的に指定できる。
オフセット値とは、参照列内の最初の記号のバッファを
指すインデックスであると定義される。長さ値は、オフ
セットによって識別される記号から始まる参照列に属す
る記号の数である。履歴参照の長さの最大値を選択する
ことが好ましい。可能な最大の圧縮比はこの値に直接相
関して増加するが、データ・ストリーム形式ごとに、そ
の値を超えると、各一致ごとに平均文字数に対して、符
号化された列の長さの値が大きすぎるため、平均圧縮比
が低下し始めるという、最適の長さが存在する。ちょう
ど2の累乗であることが好ましいのは、一致を符号化す
るのに必要なビット数が、次の2の累乗まで変化しない
ためである。すなわち、長さの値を次の2の累乗ぴった
りに釘付けしないでおくと、潜在的な圧縮比の浪費とな
る。好ましい実施例では、2048文字の履歴バッファ
に対して、履歴参照の最大長が8ビット・バイト16個
であればうま(働くことが判明している。
辞典は、それぞれが1個から履歴参照の最大長によって
指定される数までの記号を含む列を保持できる、単純な
要素配列として実施される。圧縮の間、辞典内の列は、
補助ハツシュ・テーブルを用いてルック・アップされる
。補助/1ツシユ・テーブルは、ハツシュ・テーブルが
まばらで効率的であることを保証するため、辞典自体の
数倍の要素を含むべきである。本発明の好ましい実施例
の2048バイトの履歴バッファでは、辞典のサイズが
1024であればうまく働くことが判明している。この
サイズの辞典は、ハツシュ・テーブルの過度な衝突を避
けるため、少なくとも2048個のエントリを備えたハ
ツシュ・テーブルで支援すべきである。
ハツシュ・テーブルは当業者にとって周知であり、テー
ブル内にルックアップされる列を含む記号に対して数学
的操作を行なうことによって形成される。この数学的操
作で、ハツシュ・テーブル指標として有効な範囲内の1
個の整数が与えられる。その指標が指すハツシュ・テー
ブル・エントリは、辞典内の対応するエントリのインデ
ックスを含んでいる。この間接指定により、辞典がほと
んど空である圧縮の初期段階の間に辞典エントリの指標
を効率的に割り当てることが可能になる。
辞典の最初のエントリから始めて、順次高位のエントリ
を構築して順序通り辞典を満たすことによって、この段
階の間に指標の値を送るのに必要なビット数が少なくな
るという利点を得ることができる。
辞典自体に比べてまばらな状態にハツシュ・テーブルを
保つことにより、複数の列が同じハツシュ・テーブル指
標にハツシュされるとき(これをハツシュ・テーブルの
衝突と称する)にどんな形のオーバフロ一連鎖も必要と
せずに優れた性能を実現することができる。このような
衝突は、必要に応じて古いデータを捨て、それを新しい
データで置き換えることによって処理される。リンクさ
れた辞典エントリのLRU待ち行列をハツシュ・テーブ
ルと共に用いると、辞典が最終的に満杯になったとき、
辞典エントリの挿入と削除が容易になる。
固定サイズの辞典内で新しいエントリの場所をあけるた
めにあるエントリを捨てざるを得ないときは、長時間使
用されなかったエントリを捨てた方がよい。LRU待ち
行列を使用すると、それが効率的に行なえる。
本発明の圧縮方法の次のステップであるプロ・ツク13
では、変数MATCHをリテラル形式にセットする。M
ATCHは、記号の列が履歴バッファ内と辞典内のどち
らに複製されているかに応じて、リテラル、履歴または
辞典のいずれかの形式となる。列が履歴バッファにも辞
典にも複製されていない場合は、MATCHはリテラル
形式になる。
本発明の圧縮方法の次のステップであるブロック15で
は、入力列から記号を読み取って、それをトークンに付
加する。当初は、トークンは1個の文字からなっている
。しかし、本発明の方法が進行して、履歴バッファと辞
典とが満杯になったとき、トークンは複数の文字からな
る列となる。
判断ブロック17で、このトークンを辞典の内容と比較
する。当初は辞典が空であるため、一致は見つからない
。しかし、本発明の方法がし、ばらく進行した後には、
辞典に列が挿入され、一致が見つかるようになる。辞典
で一致が見つかった場合、ブロック19で、MATCH
を対応する指標値を伴う辞典形式にセットし、次にブロ
ック15に戻って、入力列から次の記号を読み取ってト
ークンに付加する。
トークンが辞典内で複製されていない場合、判断ブロッ
ク21で、このトークンを履歴バッファの内容と比較す
る。この場合も、当初は履歴バッファが空であるため、
履歴バッファ内での一致は見つからない。しかし、本発
明の圧縮方法がしばらく進行した後には、このトークン
が履歴バッファ内で複製されている可能性がある。この
トークンが履歴バッファ内で複製されている場合、ブロ
ック23で、MATCHをオフセットと長さの値とを伴
う履歴形式にセットし、ブロック15に戻って、入力列
から次の記号を読み取ってトークンに付加する。次に、
ブロックエフで、トークンを再び辞典の内容と比較する
。本発明の圧縮方法では、トークンが履歴参照の最大長
辺下である限り、辞典内でも履歴バッファ内でもトーク
ンが複製されていない状態になるまで、記号をトークン
に付加して、そのトークンを辞典および履歴バッファの
内容と比較することを続ける。こうして本方法は、辞典
内または履歴バッファ内で複製されている、許容される
最長の文字列を形成する。この最長の文字列は、トーク
ンから最後の文字を除いたものである。本開示では、1
個のリテラルを列であると見なす。
本発明の圧縮方法は、許容される最長の列を形成し終え
た後に、その列を象徴する参照を発行する。判断ブロッ
ク25でMATCHが辞典形式であった場合は、ブロッ
ク27で、MATCHによって指定された辞典参照が出
力または発行される。
MATCHが辞典形式ではない場合は、履歴形式または
リテラル形式のいずれかである。判断ブロック29で、
MATCHが履歴形式であった場合は、ブロック31で
、MATCHによって指定された履歴参照が発行または
出力される。また、MATCHが履歴形式であった場合
は、履歴参照によって指定された参照列が辞典に追加さ
れ、辞典のサイズが記録される。
MATCHが履歴形式ではない場合、それはリテラル形
式である。ブロック33で、トークン内の記号に対する
リテラル参照が発行または出力される。辞典参照、履歴
参照またはリテラル参照が発行された後、ブロック35
で、参照列が履歴バッファに付加され、トークンの先頭
から削除される。
同時に、履歴バッファのサイズが記録される。次に、ト
ークンはブロック13に戻り、入力記号列が終りになる
までこの処理を続ける。
代表的なデータ・ストリームの確率論的研究に基づいて
、下記の符号化方式が最適に近い結果を生むことが判明
した。
リテラル参照  0+「記号」 履歴参照   1+0+ rオフセット」+「長さ」 辞典参照    1+1+ r指標」 ”1″および0″は2進数の1桁を表し、「オフセット
」、「長さ」および「指標」は、特定の場合にそれらの
潜在的な最大値を表すのに必要な最小のビット数で符号
化されている。より具体的には、必要なビット数は、潜
在的な最大値を最も近い2の累乗に切り上げた値の、2
を底とする対数に等しい。たとえば、辞典が12個のエ
ントリを含む場合、12は16(次の2の累乗)に切上
げられ、16の2を底とする対数は4なので、指標を符
号化するのに必要なビット数は4である。
「記号」は記号自体の8ビット表現である。
本発明の圧縮機能に入るデータは、8ビット・バイトと
して処理されるが、圧縮機能から出力されるデータは自
由形式のビット・ストリームである。前述のリテラル参
照、履歴参照および辞典参照に対する符号化規則により
、復元機能でこの自由形式のビット・ストリームを容易
にかつ曖昧さなしに解析することが可能となる。
典型的なアプリケーション環境では、各リテラル記号を
符号化するのに必要なビット数は、圧縮機能と復元機能
とを相互接続するシリアル通信チャネルの基本ブロック
・サイズに等しくなる。たとえば、EBCDIC環境で
は、記号の値は8ビットを用いて符号化され、代表的な
通信リンク上を流れる基本的情報単位は、8ビット文字
に量子化される。リテラル参照を符号化するのに必要な
ビット数は、常にこのようなリンクの基本ブロック・サ
イズよりも1だけ大きいので、最後のデータ・ブロック
内に利用可能な追加ビットが存在する場合は、最後の有
効な参照の末尾に1個の0ビットを追加することによっ
て、最後の有効な文字の末尾の後ろの使用されていない
ビットを復元機能に強制的に無視させることが常に可能
である。0ビットを用いてリテラル参照の先頭を模倣す
ることにより、圧縮されたデータ・ストリームが次のブ
ロック境界で打ち切られたためにその参照が完了できな
いことを知った復元機能は、最後のデータ・ブロック内
の余分なビットを自動的に無視する。言い換えれば、復
元機能は0ビットを「見る」と、それは8ビット・リテ
ラルを得ることを期待する。
0ビットの後に何も続かない場合、復元機能はそのシー
ケンスが完了したことを「知る」。
第2図には、本発明の復元方法の流れ図が示されている
。最初のステップであるブロック37で、履歴バッファ
および辞典をクリアする。履歴バッファと辞典がクリア
された後、ブロック39で、入力から参照が読み取られ
、それに従ってMATCHがセットされる。参照の第1
ビットが0である場合、MATCHはリテラル形式であ
る。参照の第1ビットが1である場合、MATCHは辞
典形式または履歴形式のいずれかである。1に続くビッ
トが0である場合、MATCHは履歴形式である。1に
続くビットが1である場合、MATCHは辞典形式であ
る。
判断ブロック41でMATCHが辞典形式であった場合
、ブロック43で、MATCHによって指定された辞典
の列が出力される。
MATCHが辞典形式ではない場合、判断ブロック45
でMATCHが履歴形式であった場合は、ブロック47
で、MATCHによって指定された履歴列を出力し、そ
の列を辞典に追加し、現在の辞典のエン) IJ数を記
録する。MATCHが辞典形式でも履歴形式でもない場
合は、ブロック49で、MATCHによって指定された
リテラル記号が出力される。最後に、ブロック43.4
7または49でMATCHによって指定された列を出力
した後に、ブロック51で、その列を履歴バッファに付
加し、現在の履歴バッファのサイズを記録して、入力列
が終りになるまでこの処理を繰り返す。
当初は、復元機能の辞典と履歴バッファは空である。し
かし、復元機能が受は取る最初の参照はリテラル形式で
ある。リテラル参照を処理する際には、これを履歴バッ
ファに追加する。復元機能は、その履歴バッファ内で一
致を見つけると、履歴参照を発行する。圧縮機能と復元
機能の履歴バッファは同一であるため、履歴参照は復元
機能の履歴バッファ内の正しい記号列を識別する。圧縮
機能が履歴参照を発行し、復元機能がそれを受は取ると
、その履歴参照によって参照される列が、圧縮機能およ
び復元機能の当該の辞典に挿入される。
本発明の方法は、このように2つのデータ構造すなわち
履歴バッファおよび辞典を使用して、データ列の効率的
な圧縮を達成する。履歴バッファを固定された深さに制
限し、履歴参照の最大長を相対的に小さな値に制限し、
辞典内のエントリの最大数を固定した数に制限すること
により、極めて効率的にメモリを利用し、ずっと大量の
メモリを必要とする方法に匹敵する圧縮比をもたらす、
相互に関連した1組のデータ構造を設計することが可能
である。
E1発明の効果 本発明によれば、圧縮データの符号化が可能となる。
【図面の簡単な説明】
第1図は、本発明の圧縮方法を示す流れ図である。 第2図は、本発明の復元方法を示す流れ図である。

Claims (10)

    【特許請求の範囲】
  1. (1)リテラル参照、辞典参照および履歴参照のシーケ
    ンスからなる圧縮されたデータを符号化する方法であっ
    て、 各リテラル参照にリテラル識別子を割り当てるステップ
    と、 各履歴参照に履歴識別子を割り当てるステップと、 各辞典参照に辞典識別子を割り当てるステップと を含むことを特徴とする方法。
  2. (2)請求項1に記載の方法であって、前記リテラル識
    別子が、1個の0ビットからなることを特徴とする方法
  3. (3)請求項2に記載の方法であって、前記履歴識別子
    が1個の1ビットとそれに続く1個の0ビットからなり
    、前記辞典識別子が1個の1ビットとそれに続く1個の
    1ビットからなることを特徴とする方法。
  4. (4)記号のシーケンスからなるデータ・ストリームを
    符号化する方法であって、 履歴バッファ内に前記シーケンスの記号を記録するステ
    ップと、 前記シーケンスからの記号の列が前記履歴バッファ内で
    複製されるとき、履歴識別子、オフセット値および長さ
    の値を含む履歴参照を発行するステップと、 履歴参照によって発行された記号の列を辞典に記録する
    ステップと、 前記シーケンスからの記号の列が前記辞典内で複製され
    るとき、辞典識別子および指標値を含む辞典参照を発行
    するステップと、 ある記号が前記履歴バッファ内でも前記辞典内でも複製
    されないとき、リテラル識別子および前記の記号を含む
    リテラル参照を発行するステップと を含むことを特徴とする方法。
  5. (5)請求項4に記載の方法であって、前記の履歴バッ
    ファへの現在の最大オフセットを記録するステップを含
    むことを特徴とする方法。
  6. (6)請求項5に記載の方法であって、前記履歴参照の
    オフセット部分の長さが、前記履歴バッファへの前記の
    現在の最大オフセットの2を底とする対数を最も近い整
    数値に切り上げた値と等しいことを特徴とする方法。
  7. (7)請求項4に記載の方法であって、前記辞典内の現
    在のエントリ数を記録するステップを含むことを特徴と
    する方法。
  8. (8)請求項7に記載の方法であって、前記辞典参照の
    長さが、前記の現在の辞典エントリ数の2を底とする対
    数を最も近い整数値に切り上げた値に等しいことを特徴
    とする方法。
  9. (9)請求項4に記載の方法であって、前記のデータ・
    ストリームが終りになったとき、参照識別子を発行する
    ステップを含むことを特徴とする方法。
  10. (10)請求項9に記載の方法であって、前記参照識別
    子がリテラル識別子であることを特徴とする方法。
JP2313006A 1989-12-28 1990-11-20 圧縮データの符号化方法 Expired - Lifetime JPH0779262B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/458,118 US5001478A (en) 1989-12-28 1989-12-28 Method of encoding compressed data
US458118 1989-12-28

Publications (2)

Publication Number Publication Date
JPH03204232A true JPH03204232A (ja) 1991-09-05
JPH0779262B2 JPH0779262B2 (ja) 1995-08-23

Family

ID=23819434

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2313006A Expired - Lifetime JPH0779262B2 (ja) 1989-12-28 1990-11-20 圧縮データの符号化方法

Country Status (3)

Country Link
US (1) US5001478A (ja)
EP (1) EP0438956A1 (ja)
JP (1) JPH0779262B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08116269A (ja) * 1994-10-17 1996-05-07 Fujitsu Ltd データ処理装置及びデータ処理方法
JPH08274649A (ja) * 1995-03-22 1996-10-18 Internatl Business Mach Corp <Ibm> Lempel−Zivタイプ・アルゴリズムを用いたデータ圧縮装置
JPH1075180A (ja) * 1996-03-19 1998-03-17 Lucent Technol Inc ディジタル符号化記号列の記憶方法および記憶装置
JPH1188192A (ja) * 1997-05-12 1999-03-30 Lexmark Internatl Inc データ圧縮方法及び装置

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5126739A (en) * 1989-01-13 1992-06-30 Stac Electronics Data compression apparatus and method
US5010344A (en) 1989-12-28 1991-04-23 International Business Machines Corporation Method of decoding compressed data
US5001478A (en) 1989-12-28 1991-03-19 International Business Machines Corporation Method of encoding compressed data
US5184126A (en) 1989-12-28 1993-02-02 International Business Machines Corporation Method of decompressing compressed data
US5010345A (en) 1989-12-28 1991-04-23 International Business Machines Corporation Data compression method
US5150430A (en) * 1991-03-15 1992-09-22 The Board Of Trustees Of The Leland Stanford Junior University Lossless data compression circuit and method
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
US6092070A (en) * 1992-02-11 2000-07-18 Telcordia Technologies, Inc. Method and system for lossless date compression and fast recursive expansion
US5351047A (en) * 1992-09-21 1994-09-27 Laboratory Automation, Inc. Data decoding method and apparatus
US5563595A (en) * 1993-12-23 1996-10-08 International Business Machines Corporation Method and apparatus for compressing data
US6571279B1 (en) * 1997-12-05 2003-05-27 Pinpoint Incorporated Location enhanced information delivery system
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
US5680601A (en) * 1994-12-14 1997-10-21 Hewlett-Packard Company Compression system for reducing the occurrence of a literal prefix
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
US6023558A (en) * 1996-06-27 2000-02-08 Apple Computer, Inc. Graphics compression for an emulation system
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
US6212301B1 (en) 1998-06-25 2001-04-03 Accusoft Corporation Systems and methods for digital image compression
JP3541930B2 (ja) * 1998-08-13 2004-07-14 富士通株式会社 符号化装置及び復号化装置
US7630986B1 (en) 1999-10-27 2009-12-08 Pinpoint, Incorporated Secure data interchange
US20020029285A1 (en) 2000-05-26 2002-03-07 Henry Collins Adapting graphical data, processing activity to changing network conditions
WO2002015408A2 (en) 2000-08-15 2002-02-21 Seagate Technology Llc Dual mode data compression for operating code
SE0004736D0 (sv) * 2000-12-20 2000-12-20 Ericsson Telefon Ab L M Mapping system and method
US6515598B2 (en) 2000-12-22 2003-02-04 Cilys 53, Inc. System and method for compressing and decompressing data in real time
US7376695B2 (en) 2002-03-14 2008-05-20 Citrix Systems, Inc. Method and system for generating a graphical display for a remote terminal session
US8671213B2 (en) 2002-03-14 2014-03-11 Citrix Systems, Inc. Methods and apparatus for generating graphical and media displays at a client
US6624762B1 (en) 2002-04-11 2003-09-23 Unisys Corporation Hardware-based, LZW data compression co-processor
US6714145B1 (en) 2002-09-26 2004-03-30 Richard Marques Method and apparatus for integer-based encoding and decoding of bits
US8423673B2 (en) 2005-03-14 2013-04-16 Citrix Systems, Inc. Method and apparatus for updating a graphical display in a distributed processing environment using compression
US8171169B2 (en) * 2005-03-14 2012-05-01 Citrix Systems, Inc. Method and apparatus for updating a graphical display in a distributed processing environment
US7653643B2 (en) * 2005-03-24 2010-01-26 Microsoft Corporation Method and apparatus for compressing a data set
JP4667108B2 (ja) * 2005-04-11 2011-04-06 パナソニック株式会社 データ処理装置
SE530081C2 (sv) * 2005-10-24 2008-02-26 Algotrim Ab Metod och system för datakomprimering
US8779950B2 (en) 2012-03-05 2014-07-15 Dcba, Llc Command encoded data compression
US9543980B2 (en) 2014-10-10 2017-01-10 Massachusettes Institute Of Technology Systems and methods for model-free compression and model-based decompression
US9813079B2 (en) 2016-02-29 2017-11-07 International Business Machines Corporation High-throughput compression of data

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59231683A (ja) * 1983-06-01 1984-12-26 インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン データ圧縮方法
JPS60116228A (ja) * 1983-06-20 1985-06-22 ユニシス コーポレーション ディジタル信号ストリーム圧縮方法及び圧縮装置
JPS63151224A (ja) * 1986-12-04 1988-06-23 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン データ圧縮方法
JPS6413222A (en) * 1987-07-07 1989-01-18 Kubota Ltd Magnetic recording medium

Family Cites Families (14)

* 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
US4725815A (en) * 1984-01-16 1988-02-16 International Business Machines Corporation Method for encoding and decoding a digital image
GB2172127B (en) * 1985-03-06 1988-10-12 Ferranti Plc Data compression system
US4730348A (en) * 1986-09-19 1988-03-08 Adaptive Computer Technologies Adaptive data compression system
US4899148A (en) * 1987-02-25 1990-02-06 Oki Electric Industry Co., Ltd. Data compression method
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
US5003307A (en) 1989-01-13 1991-03-26 Stac, Inc. Data compression apparatus with shift register search means
US5016009A (en) 1989-01-13 1991-05-14 Stac, Inc. Data compression apparatus and method
US5001478A (en) 1989-12-28 1991-03-19 International Business Machines Corporation Method of encoding compressed data
US5184126A (en) 1989-12-28 1993-02-02 International Business Machines Corporation Method of decompressing compressed data
US5010345A (en) 1989-12-28 1991-04-23 International Business Machines Corporation Data compression method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59231683A (ja) * 1983-06-01 1984-12-26 インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン データ圧縮方法
JPS60116228A (ja) * 1983-06-20 1985-06-22 ユニシス コーポレーション ディジタル信号ストリーム圧縮方法及び圧縮装置
JPS63151224A (ja) * 1986-12-04 1988-06-23 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン データ圧縮方法
JPS6413222A (en) * 1987-07-07 1989-01-18 Kubota Ltd Magnetic recording medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08116269A (ja) * 1994-10-17 1996-05-07 Fujitsu Ltd データ処理装置及びデータ処理方法
JPH08274649A (ja) * 1995-03-22 1996-10-18 Internatl Business Mach Corp <Ibm> Lempel−Zivタイプ・アルゴリズムを用いたデータ圧縮装置
JPH1075180A (ja) * 1996-03-19 1998-03-17 Lucent Technol Inc ディジタル符号化記号列の記憶方法および記憶装置
JPH1188192A (ja) * 1997-05-12 1999-03-30 Lexmark Internatl Inc データ圧縮方法及び装置

Also Published As

Publication number Publication date
US5001478A (en) 1991-03-19
JPH0779262B2 (ja) 1995-08-23
EP0438956A1 (en) 1991-07-31

Similar Documents

Publication Publication Date Title
JPH03204232A (ja) 圧縮データの符号化方法
JPH03204233A (ja) データ圧縮方法
US5532694A (en) Data compression apparatus and method using matching string searching and Huffman encoding
EP1057269B1 (en) Block-wise adaptive statistical data compressor
US5970177A (en) Data compression using selective encoding
US5049881A (en) Apparatus and method for very high data rate-compression incorporating lossless data compression and expansion utilizing a hashing technique
US5572206A (en) Data compression method and system
US5406278A (en) Method and apparatus for data compression having an improved matching algorithm which utilizes a parallel hashing technique
US5058144A (en) Search tree data structure encoding for textual substitution data compression systems
JP2863065B2 (ja) マッチングストリング探索およびハフマン符号化を用いたデータ圧縮装置および方法ならびにデータ伸長装置および方法
US5353024A (en) Method for data compression having an improved encoding algorithm which utilizes a token stacking technique
JPS6356726B2 (ja)
JPH03204235A (ja) 圧縮データの復号方法
JPH03204234A (ja) 圧縮データ復元方法
US7253752B2 (en) Coding apparatus, decoding apparatus, coding method, decoding method and program
CA2770348A1 (en) Compression of bitmaps and values
JPS6345131B2 (ja)
EP0340039A2 (en) Search tree data structure encoding for textual substitution data compression systems
Kwong et al. A statistical Lempel-Ziv compression algorithm for personal digital assistant (PDA)
EP0494038A2 (en) Run-length encoding in extensible character sets
JP2825960B2 (ja) データ圧縮方法及び復元方法
JP3100206B2 (ja) データ圧縮方法
Blumer Applications of DAWGs to data compression
Ise et al. A note on performance improvement of Ziv‐Lempel code
Acharya et al. An On-line Variable Length Binary Encoding