Browse Prior Art Database

Single-Dimension Compression Algorithm for Compaction of NCI Data

IP.com Disclosure Number: IPCOM000043630D
Original Publication Date: 1984-Sep-01
Included in the Prior Art Database: 2005-Feb-05
Document File: 2 page(s) / 13K

Publishing Venue

IBM

Related People

Fisher, RC: AUTHOR

Abstract

This article presents a single-dimension compression algorithm which operates on non-coded information (NCI) data to reduce the amount of storage required for storing such data and to reduce the amount of time required to transmit the data. This invention is applicable to an architecture wherein NCI data is stored in single-dimension compressed form with an "end-of-row" delimiter. The technique described here is a method of implementing that compression form. The technique involves the use of two bytes to represent any run length across an 11-inch page based on a modulo 64.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 54% of the total text.

Page 1 of 2

Single-Dimension Compression Algorithm for Compaction of NCI Data

This article presents a single-dimension compression algorithm which operates on non-coded information (NCI) data to reduce the amount of storage required for storing such data and to reduce the amount of time required to transmit the data. This invention is applicable to an architecture wherein NCI data is stored in single-dimension compressed form with an "end-of-row" delimiter. The technique described here is a method of implementing that compression form. The technique involves the use of two bytes to represent any run length across an 11-inch page based on a modulo 64. The two bytes are utilized to specify the following items: (1) the "end-of-row" code (2) the number of consecutive 1's

(3) the number of consecutive 0/'s A description of each of the two bytes can be effected by the following illustration: Byte 1 Byte 2

7 6 5 4 3 2 1 0/ 7 6 5 4 3 2 1 0/ Bit 7 of Byte 1 identifies whether the compressed data is all 1's or all 0/'s. Bit 6 of Byte 1 indicates whether Bits 0/ to 5 of Byte 1 contain the number of 64's in the string or the number of 1's or 0/'s in the string. For example, if Bit 6 of Byte 1 is a 1, Bits 0/ to 5 of Byte 1 (maximum = 60/) specify the number of 64's of either 1's or 0/'s, and the overflow (up to 63) is specified in Bits 0/ to 5 of Byte 2. If Bit 6 of Byte 1 is a 0/, then Bits 0/ to 5 of Byte 1 specify the number of consecutive 1's or 0/'s (up to a maximum of 63). With this method, Byte 1 will never contain all 1's, so that code is used to specify the "end-of-row" condition. For example: 756 black pels (1's) uncompressed would require 756 bits, or 95 bytes. With the algorithm proposed here, the two bytes used to specify 756 1's would be coded as follows:

(Image Omitted)

In the example shown above, the maximum number of 64's specified by Bits...