Теория кодирования - это изучение свойств кодов и их пригодности для специфических задач. Коды используются для сжатия данных, криптографии, нахождения и исправления ошибок и от недавнего времени для сетевого кодирования. Коды изучаются в теории информации, электротехнике, математике и кибернетике для создания эффективных и надежных методов преобразования данных. Это правило предусматривает уборку избыточности кода и обнаружения и исправления ошибок.
В теории кодирования рассматриваются два важнейших аспекта:
- Сжатие данных, или source coding - кодирование источника;
- Forward error correction, или channel coding - канальное кодирование.
Кодирование источника направлено на сжатие данных для их эффективной передачи. Канальное кодирование дает дополнительные биты данных, чтобы сделать передачу данных более устойчивой к возмущениям в канале передачи.