Din cele de mai sus rezultă că, cu erori independente reciproc, tranziția către o combinație de cod care diferă de cea dată în cel mai mic număr de simboluri este cea mai probabilă.
Gradul de diferență al oricăror două combinații de coduri se caracterizează prin distanța dintre ele în sensul Hamming sau pur și simplu distanța de cod. Este exprimată prin numărul de simboluri în care combinațiile diferă una de alta și sunt notate cu d.
Pentru a obține distanța de cod între două combinații de coduri binare, este suficient să numărați numărul de unități în suma acestor combinații modulo 2. De exemplu:
Distanța minimă preluată de toate perechile de combinații de coduri admise este numită distanța minimă de cod.
Decodificarea după recepție poate fi efectuată astfel încât combinația de cod primit să fie identificată cu cea rezolvată, care este localizată de la cea mai mică distanță de cod.
Această decodare se numește decodificare a probabilității maxime.
Evident, pentru d = 1, toate combinațiile de coduri sunt permise. De exemplu, pentru n = 3, combinațiile admise formează următorul set: 000, 001, 010, 011, 100, 101, 110, 111.
Orice eroare unică transformă această combinație într-o altă combinație permisă. Acesta este un caz de cod non-redundant care nu are o capacitate corectivă.
Dacă d = 2, atunci niciuna dintre combinațiile de coduri admise cu o singură eroare nu intră într-o altă combinație permisă. De exemplu, un subset de combinații de coduri admise poate fi format pe baza principiului parității în care se numără numărul de unități, după cum se arată mai jos pentru n = 3:
Codul detectează singurele erori, precum și alte erori de multiplicitate ciudate. În general, atunci când este necesar pentru a detecta erorile de multiplicitate r incluziv distanța minimă Hamming dintre cuvintele de cod trebuie să li se permită să fie de cel puțin o mai mare decât r. și anume d ≥ r + 1.
Într-adevăr, în acest caz eroarea, a cărei multiplicitate nu depășește r. nu poate traduce o combinație de cod permisă în alta.
Pentru a corecta o singură eroare a fiecărui cuvânt de cod permis, trebuie să se potrivească un subset al cuvintelor de cod interzise. Pentru aceste subseturi nu se suprapun, distanța Hamming dintre cuvintele de cod ar trebui să li se permită să fie de cel puțin trei. Când n = 3 pentru combinația permisă poate fi, de exemplu, să ia 000 sau 111. Apoi combinația 000 trebuie să li se permită să atribuie interzise subset codewords 001, 010, 100, format ca rezultat al unității de eroare 000 în combinație.
În mod similar, combinația permisă de 111 trebuie să primească un subset din combinațiile de coduri interzise: 110, 011, 101, care rezultă din apariția unei singure erori în combinația 111:
În general, pentru a corecta erorile multiplicității Sd între RCA, trebuie să satisfacă relația:
Pentru a corecta toate erorile de multiplicitate S și a detecta simultan toate erorile de multiplicitate rd trebuie să satisfacă condiția:
Formulele pentru d sunt date pentru cazul erorilor reciproc independente, dau valori excesive de d pentru interferențe corelate cu semnalul.
În canalele reale de comunicare, durata impulsurilor de interferență depășește adesea durata simbolului. În același timp, mai multe simboluri combinate adiacente sunt distorsionate în același timp. Erori de acest tip sunt numite pachete de erori sau pachete de eroare. Lungimea exploziile de eroare este numărul de caractere consecutive, începând cu primele caractere deformate și terminând cu ultimele caractere deformate, urmate de caractere nedistorsionate cel puțin p. Baza pentru selecție este datele statistice despre erori. Dacă, de exemplu, combinația de cod 00000000000000000 a fost transformată într-o combinație
iar ρ se presupune a fi egal cu trei, atunci în combinație există două pachete cu lungimea 4 și 5 simboluri.
Pentru erorile de erori și un canal asimetric cu aceeași capacitate corectivă, distanța minimă de hamare dintre combinațiile admise poate fi mai mică.
Subliniem încă o dată că fiecare cod de corecție specific nu garantează corectarea oricărei combinații de erori. Codurile sunt concepute pentru a stabili combinațiile de erori cel mai probabil pentru un anumit canal și cele mai periculoase pentru consecințe.