Обратимся вновь к алгоритму построения кода Хэмминга, описанному в 6.6, и построим матрицу, столбцы которой представляют собой все
– разрядные двоичные числа (в том числе и нуль), расположенные в порядке их возрастания. Полученная таким образом
матрица является порождающей матрицей
ортогонального кода длины
с
информационными символами (а значит, с
кодовыми словами). Очевидно, что веса всех ненулевых слов ортогонального кода одинаковы и равны
, следовательно, код длины
имеет минимальное расстояние
. Это означает возможность исправлять все ошибки кратности до
включительно и обнаруживать ошибки кратности
.
Основанием для подобного названия кода служит тот факт, что при замене двоичных
символов кода на
каждое кодовое слово становится одной из ортогональных функций Уолша.
Пример 6.8.1. Порождающая матрица (8,3) ортогонального кода, построенная согласно приведенному выше алгоритму, имеет вид:

Непосредственным построением всех восьми кодовых слов легко убедиться, что вес любого ненулевого слова равен 4 и код способен исправлять не только любую однократную ошибку, но и обнаруживать любую двукратную.
Ортогональные коды находят достаточно широкое использование на практике: коды длины
используются в системе мобильной связи второго поколения стандарта IS-95 для кодового разделения (в прямом канале) и помехоустойчивого кодирования информации (в обратном). В проектах (UMTS, cdma2000) систем мобильной связи третьего поколения планируется использовать более мощные ортогональный код длины 512.