Тема Контрол на компютърните системи



страница7/9
Дата25.03.2024
Размер251.5 Kb.
#120787
1   2   3   4   5   6   7   8   9
240 Heming codes
Свързани:
avtoreferat, discrete structure, Математически методи за цифрова обработка, 11168, 6656474, 2008-05-05-19-19-Paranoia Doll-seti lab-bl
2.3.3. Код на Хеминг
Кодът на Хеминг е един от най-известните систематични кодове за коригиране на единични грешки и има минимално кодово разстояние dmin =3.
Кодът на Хеминг се строи по такъв начин, че към началните информационни разряди се добавят известен брой контролни разряди, които се формират преди предаване на информацията на базата на определяне на четността на сумата на единиците в съответни групи информационни разряди.
След приемане на информацията контролната апаратура образува от получените информационни и контролни разряди т.нар. коригиращо число на базата на аналогично преброяване на единиците. При липса на грешка коригиращото число е равно на нула. При грешка стойността му посочва мястото на грешката - двоичния номер на грешния разряд в думата. Грешният разряд автоматично се коригира чрез инвертиране на стойността му.


Кодиране и декодиране с код на Хеминг
Ако кодовата дума не съдържа грешки, коригиращото число трябва да бъде равно на нула.
Ако в младшия разряд на коригиращото число се появи единица, това означава, че има грешка в един от тези разряди на думата, поредните номера на които в двоичното си представяне имат единица в младшия разряд (това са всички нечетни номера).
Въвежда се първият контролен разряд и му се присвоява нечетен пореден номер. Този контролен разряд се получава чрез сумиране по модул 2 на всички нечетни разряди. Тази сума трябва да бъде равна на нула. Описаната операция може да се запише по следния начин:
,
където а1, а3, a5,... са двоични стойности, записани в разрядите с поредни номера 1, 3, 5 и т.н.
Появата на единица във втория разряд на контролното (коригиращото) число означава грешка в онези разряди на думата, чиито поредни номера в двоичното си представяне имат единици във втория разряд (отдясно наляво). Това са номерата от вида 2, 3, 6, 7, 10, 11, 14, 15,... . Така се въвежда вторият контролен разряд, който се получава чрез сумиране по модул 2 на съответните разряди: .
От аналогични разсъждения се получават и останалите необходими контролни разряди чрез изпълнение на операциите:
и т.н.
След предаване и приемане на кодовата дума (заедно с формираните контролни разряди) се изпълняват същите операции за преброяване, с чиято помощ се получени контролните разряди. Образуваното число
E = Ek .Ek-1...E3 .E2 .E1
се нарича коригиращо число.
Когато Е=0, при предаването не е била открита грешка. При наличие на грешка няма да бъдат равни на нула онези негови разряди (суми) Ei , в образуването на които е участвал грешният разряд.


Сподели с приятели:
1   2   3   4   5   6   7   8   9




©obuch.info 2024
отнасят до администрацията

    Начална страница