US3656178A - Data compression and decompression system - Google Patents
Data compression and decompression system Download PDFInfo
- Publication number
- US3656178A US3656178A US3656178DA US3656178A US 3656178 A US3656178 A US 3656178A US 3656178D A US3656178D A US 3656178DA US 3656178 A US3656178 A US 3656178A
- Authority
- US
- United States
- Prior art keywords
- string
- units
- type
- memory
- storing
- 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.)
- Expired - Lifetime
Links
- 238000007906 compression Methods 0.000 title claims abstract description 25
- 238000000034 methods Methods 0.000 claims abstract description 3
- 230000002349 favourable Effects 0.000 claims 4
- 280000405767 Alphanumeric companies 0.000 abstract description 5
- 101710031288 ANKRD17 Proteins 0.000 description 4
- 102100011290 Ankyrin repeat domain-containing protein 17 Human genes 0.000 description 4
- 101710070395 CSI5 Proteins 0.000 description 2
- 239000003138 indicators Substances 0.000 description 2
- 239000007787 solids Substances 0.000 description 2
- 101000184804 Influenza A virus (strain A/Swine/Hong Kong/81/1978 H3N2) Hemagglutinin Proteins 0.000 description 1
- 244000268614 Inga vera subsp eriocarpa Species 0.000 description 1
- 281000146504 ONE TV ASIA companies 0.000 description 1
- 101710029401 SR3A Proteins 0.000 description 1
- 239000004676 acrylonitrile butadiene styrene Substances 0.000 description 1
- 239000000460 chlorine Substances 0.000 description 1
- 239000004794 expanded polystyrene Substances 0.000 description 1
- 101000513568 human HLA class II histocompatibility antigen, DR alpha chain Proteins 0.000 description 1
- 239000002933 immunoreactive insulin Substances 0.000 description 1
- 238000006467 substitution reactions Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—BASIC ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3066—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction by means of a mask or a bit-map
Abstract
Description
United States Patent De Maine et al.
[54] DATA COMPRESSION AND DECOMPRESSION SYSTEM [72] Inventors: Paul A. D. De Maine; Gordon K. Springer,
both of State College, Pa.
LAD. D e Maine, B. A Mgrron, and K. Kloss, The Solid System 11; Numeric Compression The Solid System 111; Alphanumeric Compression Nat. Bureau of Standards Technical Note 413, Aug. 15,1967
[451 Apr. 11, 1972 R.W. Bemer, Data Compression System, IBM Tech. Disc. Bull. Vol. 3, No. 8, Jan. 1961 Primary Examiner-Raulfe B. Zache Assistant Examiner-Sydney R. Chirlin Attorney-Robert S. Dunham, P. E. Henninger, Lester W. Clark, Gerald W. Griffin, Thomas F. Maran, Howard .1.
Churchill, R. Bradlee Boal, Christopher C. Dunham, Robert [5 7] ABSTRACT A high speed, multistage, compressor-decompressor system for processing arbitrary bit strings by reversibly removing redundant information. Alphanumeric information is processed by Type 1 compression which involves removing patterns of contiguous bytes and replacing each removed pattern by decompression information which takes considerably less storage space, and Type 2 compression which involves removing individual redundant bytes and constructing a bit map identifying the location of the removed bytes. Numerical information is processed by a compression technique involving truncation, recursive differencing, sequence removal, packing, and then utilizing the Type 1 and Type 2 compression which are used in conjunction with alphanumeric information. The information which is to be compressed is arranged in strings of bytes and any information defining removal of redundant information from a string is kept together with the string. As a result, each string is self-defined in the sense that it contains all information needed to decompress that string.
25 Claims, 38 Drawing Figures SANPAKD PATENTEuIPRITIIm 1 3,656,178
SHEET mar 30 sET ALL YES REGISTERS AND F COUNTERS IS THIS TYPE 2 COMPRESSION FIG. 1A
COMPUTE sAvINe RATIO AND FIND OUT WHETHER TO ADD, DELETE, OR UPDATE PCORDSI FIND ALL l2 AVAILABLE CODES.
STORE lN LEXICON ARE THERE ANY coDEs LEFT AVAILABLE FOR SUBSTITUTION FOR A PATTERN ANY CODES AVAILABL SET COUNTERS R AND RM A B UPDATE COUNTERS SELECT coDE FROM U No 807 LEXICON ARRAY I P {30 RM=RM-l LDAD IRE wITH ADDRESS OF MATCH 36 FROM TL (IR4) (94) m TWIN/(IRS.- E PAUL A.D. de MAINE INGER m- AY GORDON K AA 34 v LERNER DAVID 8I BEHR ATTORN E YS PAIENTEBIPII I I I972 SHEET SET UP COUNTERS AND REGISTERS FOR TYPE 2 COMPRESSION SET UP COUNTERS AND REGISTERS FOR FAST MODE GET NEXT TYPE 2 CODE TO SEARCH STRING FOR GET NEXT PCORD O SEARCH FOR IN STRING FIG. 1B
WAS THERE A SAVINGS GO TO POINT MARKED K SET UP COUNTERS TO ASSEMBLE LEXICON GO TO POINT MARKED L ARE THERE ANY ANY MORE TYPE 2 CODES GO TO POINT MARKED J ANY MORE PCORDS FOR THIS ENGTH TH ERE A SAVINGS RRL JII,CS4
ANY MORE TYPE 2 CODES ARE THERE ANY YES RELOAD REG. 8: IRR AND BRANCH SAVINGS SAVINGSR PATENTED PR 1 1 m2 SHEET 830F310 UN UNLN 20mm wooo mkmJwQ PATENTEIJIPII I I I972 SET NDR IN SOSIIRI) ZERO. MAKE SOSIIRI) NEGATIVE USED).
SHEET OSUF 3'0 LOGICAL ADD THE LAST 4 BITS OF NUMBER AT LOCATION OIBRYY) WITH ITSELF AND THE SHIFT RESULT TO RIGHT 8 BITS, TRUNCATION WITH ROUNDING STORE STORE IO LSX(IRI)/2.0 IN BWXIIRII lN BWX (IRI) 7 FIND MIN (1R4) 2'8 2 x v 234 STORE 0.0 ,E Q JQZ IN BWX (IR'I IN SUBSTRING 236 V I INCREASE SETI 220 BRYY BY 4 FIND THE MIN '98 YM (1R|I= 1R4 I DECREASE 1R3 (1R4) 8 THE DUMI=IIR5-1R4I BY 4 MAX.IIR5) IN /BWX (IRI I SUBSTRING 238 (6(BRYY I 222 0 200 IF SE I g DUMI B O YM(1R|)=(IR4+1R5I 61.08364 /2 so 1R5=I YMIIRI )I DEc E vQI I igm I224 BRYY 8Y4 (:52 a CSI5 SHIFT 6(BRYY) LOGICAL LEFT REPLACE GIBRYYI a STORE IN E6(BRYY)YM(IRI)J LOAD IRS 8| /BWX(IR|) CHECKIIRI) BRYY FROM cs2 a cs I5 LOAD BRYY r 228 AND [R3 FROM SUBTRACT TRUN Csls CS2 YMIIRIIFROM 6(BRYY) O'YYIYY l IR3=IR34 230 244 A BRYY=BRYY +4 2I4 INCREASE BRYY BY 4 DECREASE o I ma BY 4 so 50 IF 0 FIG.
PATENTEDIPR I I I972 3. 656, 1 78 SHEET 06 (1F 30 IE H I? 5 EW TTN I I sTo II: IRI a |R5 I 2$8RIHIIRTOII$3I I IN a IR3) AND .1 ADD FOUR TO IR4 I DUMIIIM) LOAD BRYY FROM LOAD I CSISIDECREASE I I FROM BRYY I I |R3 BY FOUR, I D I INCREASE IR3v8IIR4 I I BY FouRsToREIRe I w BEGIN THE FLOAD me I GIIRZI I I SIGNIFICANT I R BRYY OM e( I I I E LTI 'I'BRIED IN RT I INCREASE IR4,IR5a I I E B S O I I IR6 BY4,88II I EAEH \A I2R STORE IRS IN 9(IR3).INCREASE IR3, IR5 BI BRYY BY FOUR. LOAD IRG FROM GIBRYY). DECREASE IRI BY ONE.
TRANSFER IR? BYTES FROM 9(IR2) TO 6(IR3) STORE IR6 IN DUMI. ASSEMBLE THE CONDENSED SUBSTRING LOAD BRYY a I I IRIWITH IR28I9 I so I M355? RI CONDENSED STRINGS II IIRS+IR4 IS N0.0F I
\BYTES (III) I W I.
LOAD IR4,IR5 8IIR7 WITH ZERO LOAD IR6 8IlR4 WITH ONE 8 GIBRY LOAD IR4 POSITIVE BI IR? WITH ONE MOVE lR4-IR5 LEFT ONE BIT. INCREASE IR6 BY ONE LOAD IR4 WITH IR7. SHIFT IR4-IR5 RT. ONE
ADD IR6 TO IRS LOGICAL STORE IRS IN GIBRYY).
ADD FOUR TO BRYY. SUBSTRACT FOUR FROM IR3.
PATENTEDIPIIII I972 I SNUPAKC I SHEET 070F 3O TRUNCATION MAKE IRS POSITIVE ADD IR5 TO IRS LOAD IRI,IR3 AND BRYY FROM CS2,
I oAD IR2,|R3 a BRYY FROM cs3, (:54 a csI5:IRe, IRI,IR4 T0 IR? WITH ZERO LOAD IR? FROM GIBRYY) IF I R7-IRO MAKE IRO POSITIVE ADD IR5 TO IRG ADD IRG TO IR4 HAS IR4 OVERFLOWED YES LOAD IRB FROM IR7 IR5 WITH ZERO INCREASE B RYY BY FOUR DECR-EASE IR3 BY FOUR ITRTIEURSTRFIE INDEX IR3=NO. OF BYTES I Nos. IN suBsTRINs IR5= NO. OF CONSECUTIVE IEQUELLEILEQEFLSJ INCREASE IR5 BY ONE LOAD IRI WITH 'TFFFFFFF' cs4 a CSIS BRYY=ADDRESS l I RIDE-155W I SUBSTRING STEP (a) CONVERTED TO I INTEGERS AND I HAS IRG OVERFLOWED ADD IRS TOIR4 STORE IR4 IN IRI LOAD BRYY FROM Calf) WITH ZERO THE SUM OF I ABS. INTEGERS \L L JIBE I SUBTRACT [R6 FROM GIBRYY) 8| STORE DIFF. IN IR4. LOAD BRY WITH POSITIVE IR7 IF BRY- LOAD IRS FROM GIBRYY) INCREASE IR5 BY ONE PATENTEIII-PII II Ian 3,656,178
SHEET O8BF 30 '*G a -PTQKIE hl I l mERF Bic-1m? TFE" ADD IRs To sAvE IR8 IN wcD PACKING OF E 1 POSITIVE IRe INIRe I SETALL REGISTERS INTEGERS IN ARRAY ADD 1R0 To IR4 AND INDICATORS 9(BRYYHNTO ARRAYI I \E Y L J I SETKMZASKI AND L @EI E M s HAS No LOAD FROM LOAD IRI FROM sEouENcEs I ovERFLowED IR? INCREASE [R5 BY ONE DUMI. SHIFT IRI CONDENSED I LEFT 3 BITS \LN S'EEP (P I I I-o lBNYCgfiSLEOlXgR I LOAD IR8,CS6 AND BRYY BIIRI FROM I cs7 WITH ZERO CSI5 a cs2 I l4-K INSERT IN ExTRAcT FROM mEK :2 lS SOSURDLOAD R7: 9(BRYY) THE usED TO I NO. OF SIGN BITS ExTRAcT THIS I h ZERO I86 I INTo IR3I ADD NO. FROM RT. I L I ONE TO IR8 Il3 l J UENC'NG ,'u BsTIN CONDENSAT'ON [F 0 TRANSFER CS6 TO I AND COUNT cs7 AND STORE PROCEDURES |R3-cs6 "IT 0 IR? BY FOUR Z HAS IRs OVERFLOWED LOADIR3 BI |R2 WITH CS6 BI ZERO MULTIPLY |R2 BY IRB AND STORE THE ANSWER IN |R3 S INcREAsE BRYY BY LOAD RYY a FOURDECREASE IR3 FROM IR? BY FOUR csIs a cs4 LOAD IRe WITH 0 0(8RYY) H DEcREAsE IRB BY l E ONE.TRAN$FER ADD FOUR T0 CS7 T0 C56 BRYY. SUBTRACT FOUR FROM 0 m3 DIvIDE cs5 BY 0 IR8.QUOT|ENT a REMAINDER K so LOAD IRI FROM STORED IR4. INcREAsE AND (WCD +4) NDR BY ONE F N 0 USE MASK2 TO ExTRAcT No. OF SIGNIFICANT BITs LOAD R FROM DIBRYITIIEN OUBRYY) SUBTRACT (A COMPACT INTEGER Ims FROM 00mm IN 9(BRY) IN RIGHT III/III IHG I RUMIHI IR3 BITS OF IR2 FIG. 6B
PATENTEIIIPII I I I972 SHEET 090F130 M PAEFIN'G P T q T I gEEII/IENT? IF I MOVE REGISTERS BEING PACKED LOAD BRY,IR5 AND IRO a IRI INTO DOUBLE BRYY FROM CSIS, LEFT IRS BITS REG|STER5 C53 AND 1R6 I \L i-L J I I Wa N5 3'5"? ADD LOGICAL SUBTRACT BRY BYTES m I IIIEREIS E BRY FROMIRS ADD COMPRESSED I cs4 T0 BRY I BY FOUR.SUBTRACT 'N I ONE FROM |R8 SHIFT REGISTERS IRQ 8 IRI LEFT LOGICAL(WCD+4) BITS INSERT RT. FIVE I WEIEI=I )F BITS F cs8 INTO SEGMENTS IN THE THE LEFT FIVE \DOUBLE WORD LOAD BRY FROM BRYY MOVE DOUBLE WORD IN MASK4 INTO 6(IR6) INCREASE IRS BY EIGHT YES STORE IRS-IRI IN MASK4 AND 'ee' IN CORDI LOAD me a lRl WITH ZERO STORE 56 IN CS5 TRANSFER MASK4 TO IRS. INCREASE IRS BY EIGHT MOVE THE IR5 BYTES OF UNCOMPRESSED INFO. FROM 6(BRY) TO 9(BRYY) LOAD IR9,IR| AND BRYY FROM csI, (:32 a CS|5.STORE IR6 IN cs4 a J l INSERT NDR AND JI IN SOSHRI) LOAD IRB FROM WCD BRANCH TO BRADD EID \ CONSTRUCTED I I I I I I I I I I I I T 2775 TT PAIENIEIIAPRIIIHIZ SET ALL INDICATORS AND REGISTERS CONSTRUCT IN MASK2 THE MASK FOR EXTRACTING NS AND NOS LOAD IRE 8 IR3 WITH DOUBLE WORD FROM GIBRYY) INCREASE BRYY BY EIGHT DECREASE IR7 BY EIGHT EXTRACT NS FROM IR2 WITH MASK2 INTO IRS 8: NS (RT ADJUSTED) COMPUTE THE NUMBER OFBITS/ SEGMENT FROM IRQ 8 C55 IN IR4 CONSTRUCT MASK FOR EXTRACTING SEGMENTS IN SHIFT DOUBLE REGISTER IR2-IR3 LEFT LOGICAL 8. LOAD IR5 FROM CS5 MASKI I I EXTRACT NOS FROM IRE WITH MASK2 INTO LSX SHIFT IR2 IR3 LEFT LOGICAL 8 INCREASE IRI BY FOUR EXTRACT SEGMENT FROM m2 INTO IR5 SHEET ET JT M I BRY a BRYY I I CONTAIN ADDRESS OF I DOUBLE WORD I Nos: NO OF CONDENSED ESTSW LEFT-MOST I FIVE BITS OF I ERWKINE IETI FOR THE FIRST DOUBLE WORD I L9 F A R RAY YL I 555 13 THE I NUMBER OF I CONDENSED STRINGS IN IL E E LJ EXPAND SEGMENT IN IR5 TO FULL WORD AND STORE IN LSX (IRI) LOAD IR5 WITH NS AND SUBTRACT ONE STORE IR5 IN NS SHIFT IRZ-IR3 LEFT LOGICAL IR4 BITS SUBTRACT ONE FROM IRS STORE IRB IN CS7 LOAD IRG AND IRI WITH NS AND ZERO EXTRACT SEGMENT FROM IR2 INTO IR5 FIG. 7A
DECREASE IRS BY ONE.STORE IRG IN CS7 PATENTEDIIIR II I972 EXPAND SEGMENT IN IR5 AND STORE IN DUNIIIRI).
ADD FOUR TO IRI SHEET SAVE BRYY 8| BRY IN CS9 8s CSIOI LOAD IRS FROM BRYY 8 SUBTRACT BRY GEENTTIBE -I OF TRANSFER I OF INFORMATION I IN ARRAY DUNI T O ARRAY YY ADD IR7 a C53 TO BRYY. SUBTRACT EJE E E S ONE FROM BRYY LQE l 'i I Dm N TAT I S SUBTRACT IRs AND THE ASDRESS I ADD IRI T0 BRYY OF THE BYTE IaIZBRNYCSS ON RT HAND I I ll I I EE ALL Q E I R-2.IS T R E I ADD cs3 TO R7 IN R2 NUMBER OF BYTESI RM vc e, IR2,BRY, 9,8RYY
IROTTE OF F2 7 BYTES CREATED I IE E E E J RELOAD BRYY, BRY AND |R2 FROM CS9, CSIO 8 OS I I TRANSFER IRI BYTES F ROM DUNI TO HOLE (6(BRY)) ADD IRI TO BRY THEN STORE IN BRYY LOAD IRI WITH ZERO SHIFT IR2-IR3 LEFT LOGICAL ONE SEGMENT(IR4I DECREASE IRS BY ONE LOAD IRS AND IRS FROM CS4 AND LSX. LOAD IRI 8I |R2 WITH ZERO EEOINNINI; i
OF THE EXPANSION OF I CONDENSED PAIENTEIIM'R 1 1 m2 SHEET [JIR PARM l sosu I CHECK I I sos (2) CHECK (2) BWX (2) I mm) BYTES =4 LSUBSTRINEI Lsu BSTRING Q & SUBSTRINGTVI FIG. 6
SOS
LSX
FORMATTYPE COPAK COMPRESSOR OPTION E AND/OR F E AND/OR F USE SANPAKC ONLY USE SANPAKC ONLY USE SNUPAKII) THEN SANPAKC USE SNUPAKIZ) THEN SANPAKC USE SNUPAKI3I THEN SANPAKC DON'T USE SNUPAK OR SANPAKC WRITE THE RESI- DENT MB IN CURR E NT LOCATION FIG. .9
REWRITE THE RE- SIDENT MB IN LOCATION CURRENT READ MB IN LOCATION ADDRESS BIT 02 OFF BIT OI OFF LOAD CURRENT UPDATE EMPTY BIT 80-OFF BIT OZ-ON SET CURRENT mm FIG. 11
PATENTEDAPR 1 1 1912 SHEET 1; 0F 30 EXECUTIVE POINTERS LINK ADDRESS (BADDL BYTES) FIG. 12
moqmohm FIG. 13
BD(|) LD( I) RFILE MAIN FILE JMM) SIIEET 15UF 3O IMACH|NE-INDEPENDENT INSTRUCTION SET I LAST CODING LEVEL CONTAINING ASSEMBLY LANGUAGE L 1 1 4 A 4 1 A A A [CODING LEVEL 7 I E 1 1 1 1 1 1 1E LCODING LEVEL 6 1 I I I I I EODING LEVEL 5 LCODING LEVEL 4 MACROPAK CODING LEVEL 3 SERVICE MACROS [RESERVE I I ASSEMBLY LANGUAGE FIG. 14
CONTROL ROUTINE T T T SRI SR2 SR3 SRZA SR3A SRBB 1 n In FIG. 15
PATENTEDAPR 1 1 m2 EHEET 15 0F 3-0 INITIALIZE (SSTATECL) MSIGNAL=OO(80) NORMAL ENTRY 604 F 606 FOR SSEARCH INITIALJZE START SEARCH BITS 3c OFF N SCREEN 0 YES INDEX SCREEN AUXFILE SEARCH SEARCH 650 SEARCH (20) (20) (0| 20) ONE TM 20 7 g? UNSUCESSFUL \sla zERo SEARCH (04) 682/ SUCCESSFUL 622 620 SEARCH E .E.\L M .E E- CREATE TsMEMoRY (so) I 4o -ON M912? 2. E $9599 ZER INCREMENT JOB-LIST ITEM DISCRIPTOR A 626 POINTER l8) FIG. 16'
PATENTEDAPR 11 m2 3,656,178
SHEET 18 0F 30 686 720 COMPUTE EP 7 LENGTH IN m4, AND TOTAL SET LENGTH OF ALL me |R6+ BRY EPS IN ARRAY COMPUTE IN RI LOAD R0 TO R|5 FROM ARRAY DUMX +8 IS RI DIVISIBLE 9 SET LOAD RO TO 6 MSIGNAL X 20' Rl5 FROM THE BIT ON- ARRAY DUMX+8 |R6=|R3 70o v 692 Q INSERT TESTS FOR OVERIDE CODESJF ANY ARE PRESENT BRANCH TO THE LOCATION MMATCH IN SSEARCH SET RI=A(8ADDI) 8ADDL,8|LFAST,
I BLTHAYY SUPERSCH D aAooL, aLFAsT CSCREEN 706 FIG. 18A
PATENTEUAPR 1 1 I972 TIC MMATCH N SHEET SSEARCH lSOF 30 STORE R0 TO R6 IN ARRAY Cl SET IR|=LEXICON +8 SET LMOVE MASKI,O(IR6), C(IRI) l 874 20 SET 5 IRI=LEXICON+4 SET R1: RIRO-, STORE R0 TO R6 IN ARRAY c|-, IR3=|R3RO LMOVE DUNI,O(IR2), OHRI) SET ONE C(LEXICON)=X'OO' LOAD R0 TO R6 FROM ARRAY c| LEXICON x'o|' SETIMSIGNAL x o BIT ON 2 8'8) ZERO SET IRIIAYY+8LTHAYY TO --H(DUN|)', TBADDNE LEXICON+4=IR|- IN LEx|coN+8=|R|-Ro;
SSEARCH Y FIG. 183
Y FIG. 20A
Claims (25)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US85770769A true | 1969-09-15 | 1969-09-15 |
Publications (1)
Publication Number | Publication Date |
---|---|
US3656178A true US3656178A (en) | 1972-04-11 |
Family
ID=25326570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US3656178D Expired - Lifetime US3656178A (en) | 1969-09-15 | 1969-09-15 | Data compression and decompression system |
Country Status (1)
Country | Link |
---|---|
US (1) | US3656178A (en) |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3772654A (en) * | 1971-12-30 | 1973-11-13 | Ibm | Method and apparatus for data form modification |
US4021782A (en) * | 1974-01-07 | 1977-05-03 | Hoerning John S | Data compaction system and apparatus |
US4056809A (en) * | 1975-04-30 | 1977-11-01 | Data Flo Corporation | Fast table lookup apparatus for reading memory |
US5363098A (en) * | 1993-10-25 | 1994-11-08 | Digital Equipment Corporation | Byte aligned data compression |
US5414425A (en) * | 1989-01-13 | 1995-05-09 | Stac | Data compression apparatus and method |
US5542068A (en) * | 1991-12-10 | 1996-07-30 | Microsoft Corporation | Method and system for storing floating point numbers to reduce storage space |
US5546575A (en) * | 1994-05-23 | 1996-08-13 | Basil E. Potter & Associates, Inc. | Encoding method for compressing a tabular database by selecting effective compression routines for each field and structure of partitions of equal sized records |
US5673209A (en) * | 1995-03-29 | 1997-09-30 | International Business Machines Corporation | Apparatus and associated method for compressing and decompressing digital data |
US5710719A (en) * | 1995-10-19 | 1998-01-20 | America Online, Inc. | Apparatus and method for 2-dimensional data compression |
US5940833A (en) * | 1996-07-12 | 1999-08-17 | Microsoft Corporation | Compressing sets of integers |
US6006232A (en) * | 1997-10-21 | 1999-12-21 | At&T Corp. | System and method for multirecord compression in a relational database |
US6145068A (en) * | 1997-09-16 | 2000-11-07 | Phoenix Technologies Ltd. | Data transfer to a non-volatile storage medium |
US20030016820A1 (en) * | 2001-06-22 | 2003-01-23 | Volpert Thomas R. | System and method for data encryption |
US6512515B1 (en) | 1999-09-18 | 2003-01-28 | Wildtangent | Data compression through motion and geometric relation estimation functions |
US6577769B1 (en) | 1999-09-18 | 2003-06-10 | Wildtangent, Inc. | Data compression through adaptive data size reduction |
US20050025232A1 (en) * | 2003-07-28 | 2005-02-03 | International Business Machines Corporation | Apparatus, system and method for data compression using irredundant patterns |
US20050151836A1 (en) * | 2004-01-09 | 2005-07-14 | Ni Hong T. | Video conferencing system |
US20050160401A1 (en) * | 1999-10-16 | 2005-07-21 | Computer Associates Think, Inc. | System and method for adding user-defined objects to a modeling tool |
US20060225030A1 (en) * | 1999-10-16 | 2006-10-05 | Deffler Tad A | Method and System for Generating Dynamic Comparison Models |
US20080209149A1 (en) * | 2003-07-01 | 2008-08-28 | Universitat Stuttgart | Processor Architecture for Exact Pointer Identification |
US20090055315A1 (en) * | 1996-06-05 | 2009-02-26 | Fraud Control System.Com | Method Of Billing A Purchase Made Over A Computer Network |
WO2010021698A2 (en) * | 2008-08-19 | 2010-02-25 | Netapp, Inc. | System and method for compression of partially ordered data sets |
US7711685B1 (en) * | 1998-10-16 | 2010-05-04 | Computer Associates Think, Inc. | Method and system for an extensible macro language |
US20120056763A1 (en) * | 2010-09-08 | 2012-03-08 | Giovanni Motta | Systems and methods for data compression |
US8190513B2 (en) | 1996-06-05 | 2012-05-29 | Fraud Control Systems.Com Corporation | Method of billing a purchase made over a computer network |
US20130159264A1 (en) * | 2008-08-25 | 2013-06-20 | Taizo Shirai | Data conversion device, data conversion method, and program |
US8630942B2 (en) | 1996-06-05 | 2014-01-14 | Fraud Control Systems.Com Corporation | Method of billing a purchase made over a computer network |
US20140164376A1 (en) * | 2012-12-06 | 2014-06-12 | Microsoft Corporation | Hierarchical string clustering on diagnostic logs |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3237170A (en) * | 1962-07-17 | 1966-02-22 | Ibm | Adaptive data compactor |
US3273130A (en) * | 1963-12-04 | 1966-09-13 | Ibm | Applied sequence identification device |
US3289169A (en) * | 1962-09-27 | 1966-11-29 | Beckman Instruments Inc | Redundancy reduction memory |
US3310786A (en) * | 1964-06-30 | 1967-03-21 | Ibm | Data compression/expansion and compressed data processing |
US3413611A (en) * | 1966-01-17 | 1968-11-26 | Pfuetze David | Method and apparatus for the compaction of data |
US3422403A (en) * | 1966-12-07 | 1969-01-14 | Webb James E | Data compression system |
US3490690A (en) * | 1964-10-26 | 1970-01-20 | Ibm | Data reduction system |
US3535696A (en) * | 1967-11-09 | 1970-10-20 | Webb James E | Data compression system with a minimum time delay unit |
-
1969
- 1969-09-15 US US3656178D patent/US3656178A/en not_active Expired - Lifetime
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3237170A (en) * | 1962-07-17 | 1966-02-22 | Ibm | Adaptive data compactor |
US3289169A (en) * | 1962-09-27 | 1966-11-29 | Beckman Instruments Inc | Redundancy reduction memory |
US3273130A (en) * | 1963-12-04 | 1966-09-13 | Ibm | Applied sequence identification device |
US3310786A (en) * | 1964-06-30 | 1967-03-21 | Ibm | Data compression/expansion and compressed data processing |
US3490690A (en) * | 1964-10-26 | 1970-01-20 | Ibm | Data reduction system |
US3413611A (en) * | 1966-01-17 | 1968-11-26 | Pfuetze David | Method and apparatus for the compaction of data |
US3422403A (en) * | 1966-12-07 | 1969-01-14 | Webb James E | Data compression system |
US3535696A (en) * | 1967-11-09 | 1970-10-20 | Webb James E | Data compression system with a minimum time delay unit |
Non-Patent Citations (2)
Title |
---|
P.A.D. de Maine, B. A. Marron, and K. Kloss, The Solid System II; Numeric Compression The Solid System III; Alphanumeric Compression Nat. Bureau of Standards Technical Note 413, Aug. 15, 1967 * |
R.W. Bemer, Data Compression System, IBM Tech. Disc. Bull. Vol. 3, No. 8, Jan. 1961 * |
Cited By (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3772654A (en) * | 1971-12-30 | 1973-11-13 | Ibm | Method and apparatus for data form modification |
US4021782A (en) * | 1974-01-07 | 1977-05-03 | Hoerning John S | Data compaction system and apparatus |
US4056809A (en) * | 1975-04-30 | 1977-11-01 | Data Flo Corporation | Fast table lookup apparatus for reading memory |
US5463390A (en) * | 1989-01-13 | 1995-10-31 | Stac Electronics, Inc. | Data compression apparatus and method |
US5414425A (en) * | 1989-01-13 | 1995-05-09 | Stac | Data compression apparatus and method |
US5506580A (en) * | 1989-01-13 | 1996-04-09 | Stac Electronics, Inc. | Data compression apparatus and method |
US5542068A (en) * | 1991-12-10 | 1996-07-30 | Microsoft Corporation | Method and system for storing floating point numbers to reduce storage space |
US5363098A (en) * | 1993-10-25 | 1994-11-08 | Digital Equipment Corporation | Byte aligned data compression |
US5546575A (en) * | 1994-05-23 | 1996-08-13 | Basil E. Potter & Associates, Inc. | Encoding method for compressing a tabular database by selecting effective compression routines for each field and structure of partitions of equal sized records |
US5673209A (en) * | 1995-03-29 | 1997-09-30 | International Business Machines Corporation | Apparatus and associated method for compressing and decompressing digital data |
US5710719A (en) * | 1995-10-19 | 1998-01-20 | America Online, Inc. | Apparatus and method for 2-dimensional data compression |
US8229844B2 (en) | 1996-06-05 | 2012-07-24 | Fraud Control Systems.Com Corporation | Method of billing a purchase made over a computer network |
US8190513B2 (en) | 1996-06-05 | 2012-05-29 | Fraud Control Systems.Com Corporation | Method of billing a purchase made over a computer network |
US8630942B2 (en) | 1996-06-05 | 2014-01-14 | Fraud Control Systems.Com Corporation | Method of billing a purchase made over a computer network |
US20090055315A1 (en) * | 1996-06-05 | 2009-02-26 | Fraud Control System.Com | Method Of Billing A Purchase Made Over A Computer Network |
US5940833A (en) * | 1996-07-12 | 1999-08-17 | Microsoft Corporation | Compressing sets of integers |
US6145068A (en) * | 1997-09-16 | 2000-11-07 | Phoenix Technologies Ltd. | Data transfer to a non-volatile storage medium |
US6006232A (en) * | 1997-10-21 | 1999-12-21 | At&T Corp. | System and method for multirecord compression in a relational database |
US7711685B1 (en) * | 1998-10-16 | 2010-05-04 | Computer Associates Think, Inc. | Method and system for an extensible macro language |
US6577769B1 (en) | 1999-09-18 | 2003-06-10 | Wildtangent, Inc. | Data compression through adaptive data size reduction |
US6697530B2 (en) | 1999-09-18 | 2004-02-24 | Wildtangent, Inc. | Data compression through adaptive data size reduction |
US6512515B1 (en) | 1999-09-18 | 2003-01-28 | Wildtangent | Data compression through motion and geometric relation estimation functions |
US7734457B2 (en) | 1999-10-16 | 2010-06-08 | Computer Associates Think, Inc. | Method and system for generating dynamic comparison models |
US20050160401A1 (en) * | 1999-10-16 | 2005-07-21 | Computer Associates Think, Inc. | System and method for adding user-defined objects to a modeling tool |
US20060225030A1 (en) * | 1999-10-16 | 2006-10-05 | Deffler Tad A | Method and System for Generating Dynamic Comparison Models |
US7382878B2 (en) * | 2001-06-22 | 2008-06-03 | Uponus Technologies, Llc | System and method for data encryption |
US20030016820A1 (en) * | 2001-06-22 | 2003-01-23 | Volpert Thomas R. | System and method for data encryption |
US20080209149A1 (en) * | 2003-07-01 | 2008-08-28 | Universitat Stuttgart | Processor Architecture for Exact Pointer Identification |
US8473722B2 (en) * | 2003-07-01 | 2013-06-25 | Universitaet Stuttgart | Processor architecture for exact pointer identification |
US7479905B2 (en) * | 2003-07-28 | 2009-01-20 | International Business Machines Corporation | Apparatus, system and method for data compression using irredundant patterns |
US20050025232A1 (en) * | 2003-07-28 | 2005-02-03 | International Business Machines Corporation | Apparatus, system and method for data compression using irredundant patterns |
US20050151836A1 (en) * | 2004-01-09 | 2005-07-14 | Ni Hong T. | Video conferencing system |
US20100049726A1 (en) * | 2008-08-19 | 2010-02-25 | Netapp, Inc. | System and method for compression of partially ordered data sets |
WO2010021698A2 (en) * | 2008-08-19 | 2010-02-25 | Netapp, Inc. | System and method for compression of partially ordered data sets |
WO2010021698A3 (en) * | 2008-08-19 | 2010-04-22 | Netapp, Inc. | System and method for compression of partially ordered data sets |
US8250043B2 (en) | 2008-08-19 | 2012-08-21 | Netapp, Inc. | System and method for compression of partially ordered data sets |
US20130159264A1 (en) * | 2008-08-25 | 2013-06-20 | Taizo Shirai | Data conversion device, data conversion method, and program |
US8843457B2 (en) * | 2008-08-25 | 2014-09-23 | Sony Corporation | Data conversion device, data conversion method, and program |
US8228216B2 (en) * | 2010-09-08 | 2012-07-24 | Hewlett-Packard Development Company, L.P. | Systems and methods for data compression |
US20120056763A1 (en) * | 2010-09-08 | 2012-03-08 | Giovanni Motta | Systems and methods for data compression |
US20140164376A1 (en) * | 2012-12-06 | 2014-06-12 | Microsoft Corporation | Hierarchical string clustering on diagnostic logs |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9025892B1 (en) | Data record compression with progressive and/or selective decomposition | |
US9461668B2 (en) | Decomposition of decimal floating point data | |
Said | Introduction to arithmetic coding-theory and practice | |
US8676858B2 (en) | Grouping and differentiating volumes of files | |
JP3009727B2 (en) | Improved data compression device | |
US5652581A (en) | Distributed coding and prediction by use of contexts | |
US5497485A (en) | Method and apparatus for implementing Q-trees | |
US8090027B2 (en) | Data compression using an arbitrary-sized dictionary | |
AU626317B2 (en) | Method and apparatus for encoding, decoding and transmitting data in compressed form | |
US9292256B2 (en) | Shift significand of decimal floating point data | |
US6522268B2 (en) | Systems and methods for multiple-file data compression | |
US5973630A (en) | Data compression for use with a communications channel | |
US4342085A (en) | Stem processing for data reduction in a dictionary storage file | |
CA1319437C (en) | Intermediate spreadsheet structure | |
US7797360B2 (en) | Sortable floating point numbers | |
US5140321A (en) | Data compression/decompression method and apparatus | |
Fotheringham | Dynamic storage allocation in the Atlas computer, including an automatic use of a backing store | |
JP6596102B2 (en) | Lossless data loss by deriving data from basic data elements present in content-associative sheaves | |
US5999949A (en) | Text file compression system utilizing word terminators | |
EP0083393B1 (en) | Method of compressing information and an apparatus for compressing english text | |
US3871578A (en) | Data processing system for multiplying and intergerizing floating point numbers | |
US4899149A (en) | Method of and apparatus for decoding Huffman or variable-length coees | |
US7840774B2 (en) | Compressibility checking avoidance | |
US7554464B1 (en) | Method and system for processing data having a pattern of repeating bits | |
US8195727B2 (en) | Convert significand of decimal floating point data from packed decimal format |