Arithmetic coding revisited
- 1 July 1998
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Information Systems
- Vol. 16 (3) , 256-294
- https://doi.org/10.1145/290159.290162
Abstract
Over the last decade, arithmetic coding has emerged as an important compression tool. It is now the method of choice for adaptive coding on myltisymbol alphabets because of its speed, low storage requirements, and effectiveness of compression. This article describes a new implementation of arithmetic coding that incorporates several improvements over a widely used earlier version by Witten, Neal, and Cleary, which has become a de facto standard. These improvements include fewer multiplicative operations, greatly extended range of alphabet sizes and symbol probabilities, and the use of low-precision arithmetic, permitting implementation by fast shift/add operations. We also describe a modular structure that separates the coding, modeling, and probability estimation components of a compression system. To motivate the improved coder, we consider the needs of a word-based text compression program. We report a range of experimental results using this and other models. Complete source code is available.Keywords
This publication has 35 references indexed in Scilit:
- Minimizing excess code length and VLSI complexity in the multiplication free approximation of arithmetic codingInformation Processing & Management, 1994
- A new data structure for cumulative frequency tablesSoftware: Practice and Experience, 1994
- Is Huffman coding dead?Computing, 1993
- New bounds on the redundancy of Huffman codesIEEE Transactions on Information Theory, 1991
- Data Compression Using Dynamic Markov ModellingThe Computer Journal, 1987
- A locally adaptive data compression schemeCommunications of the ACM, 1986
- Data Compression Using Adaptive Coding and Partial String MatchingIEEE Transactions on Communications, 1984
- Algorithms for adaptive Huffman codesInformation Processing Letters, 1984
- Variations on a theme by HuffmanIEEE Transactions on Information Theory, 1978
- Optimal source codes for geometrically distributed integer alphabets (Corresp.)IEEE Transactions on Information Theory, 1975