This book provides a basic introduction to both information theory and data compression. Although the two topics are related, this unique treatment allows readers to explore either topic independently. The authors' presentation of information theory is pitched at an elementary level, making the book less daunting than most other texts. The second edition includes a detailed history of information theory that provides a solid background for the quantification of the topic as developed by Claude Shannon. It also covers the information rate of a code and the trade-off between error correction and rate of information transmission, probabilistic finite state source automata, and wavelet methods.