Границя Хемінга/Глибина:Використання для двійкового коду

Матеріал з testwiki
Версія від 22:10, 30 травня 2022, створена imported>Renvoy (added Category:Границя Хемінга using HotCat)
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)
Перейти до навігації Перейти до пошуку

Границя Хемінга дозволяє обчислити кількість додаткових перевірних розрядів для двійкового коду, що виправляє помилки. Введемо позначення:

k — кількість інформаційних символів
r — кількість перевірних
n=k+r — довжина результуючого блокового коду.
 t — кількість помилок, яку потрібно виправити

Тоді межа Хемінга формулюється як:

Aq(n,dmin)qnk=0tCnk(q1)k

Формулу можна спростити, якщо знати наступне:

Aq(n,dmin) — це кількість символів в алфавіті, тобто, потужність коду
q — основа коду. Для двійкового коду q=2
Візьмемо t=1
A2(n,dmin)2nCn0+Cn1=2n1+n

Кількість символів у алфавіті (кодових слів) співпадає з кількістю комбінацій інформаційних повідомлень (адже кожному кодовому слову ставиться у відповідність тільки одне повідомлення). А цю величину розрахувати просто:

A2(n,dmin)=2k

Почнемо математичний ланцюжок:

2k2n1+n
1+n2n2k=2nk=2r

Шаблон:TextBox Рішення даної нерівності відносно r дає нам нижню межу для кількості перевірних розрядів блокового коду.

Додаток

При t=2 ми отримаємо наступну формулу:

A2(n,dmin)2nCn0+Cn1+Cn2=2n1+n+n(n1)2=2n+1n2+n+2
2k2n+1n2+n+2

Шаблон:TextBox