Useful for a first course on coding theory at the senior or beginning graduate level, this book provides a bridge between introductory courses in digital communications and more advanced courses in information theory. It includes error control techniques.