Первые три буквы фамилии студента (ШЕВ) закодировать равномерным двоичным кодом
.pdf
Зарегистрируйся в 2 клика в Кампус и получи неограниченный доступ к материалам с подпиской Кампус+ 🔥
Первые три буквы фамилии студента (ШЕВ) закодировать равномерным двоичным кодом.
2. Закодировать полученное двоичное слово кодом Хэмминга, исправляющим однократные ошибки.
3. Показать, как определяются однократные ошибки в разряде, совпадающем с номером варианта студента (10).
Решение
Закодируем буквы ШЕВ равномерным двоичным кодом
С – 11001
А – 00110
Х – 00011
Получим двоичное n-разрядное слово – 11001 00110 00011 (n = 15) формата a=a1a2a3a4a5a6a7a8a9a10a11a12a13a14a15
Принимаем количество контрольных битов k = 5. Проверяем выполнение условия
2k≥n+k+1
25≥15+5+1
32≥21
Условие выполняется. Закодируем полученное слово кодом Хемминга (20/5).
Формат кодированного слова
b=b1b2b3b4b5b6b7b8b9b10b11b12b13b14b15b16b17b18b19b20
где
b1
b2
b3
b4
b5
b6
b7
b8
b9
b10
b11
b12
b13
b14
b15
b16
b17
b18
b19
b20
k1
k2
a1
k3
a2
a3
a4
k4
a5
a6
a7
a8
a9
a10
a11
k5
a12
a13
a14
a15
1
1 0 0
1 0 0 1 1 0 0
0 0 1 1
Контрольные биты определяем из соотношения
b1⨁b3⨁b5⨁b7⨁b9⨁b11⨁b13⨁b15⨁b17⨁b19=0
b2⨁b3⨁b6⨁b7⨁b10⨁b11⨁b14⨁b15⨁b18⨁b19=0
b4⨁b5⨁b6⨁b7⨁b12⨁b13⨁b14⨁b15⨁b19⨁b20=0
b8⨁b9⨁b10⨁b11⨁b12⨁b13⨁b14⨁b15=0
b16⨁b17⨁b18⨁b19⨁b20=0
Подставим значения информационных битов
b1⨁1⨁1⨁0⨁1⨁0⨁1⨁0⨁0⨁1=0
b2⨁1⨁0⨁0⨁0⨁0⨁0⨁0⨁0⨁1=0
b4⨁1⨁0⨁0⨁1⨁1⨁0⨁0⨁1⨁1=0
b8⨁1⨁0⨁0⨁1⨁1⨁0⨁0=0
b16⨁0⨁0⨁1⨁1=0
Получим
b1=1, b2=0, b4=1, b8=1, b16=0.
Закодированное слово – b=10111 00110 01100 00011.
Допустим однократную ошибку в бите 10
c=10111 00111 01100 00011
Определим значения синдромов
s1=c1⨁c3⨁c5⨁c7⨁c9⨁c11⨁c13⨁c15⨁c17⨁c19=1⨁1⨁1⨁0⨁1⨁0⨁1⨁0⨁0⨁1=0
s2=c2⨁c3⨁c6⨁c7⨁c10⨁c11⨁c14⨁c15⨁c18⨁c19=0⨁1⨁0⨁0⨁1⨁0⨁0⨁0⨁0⨁1=1
s3=c4⨁c5⨁c6⨁c7⨁c12⨁c13⨁c14⨁c15⨁c19⨁c20=1⨁1⨁0⨁0⨁1⨁1⨁0⨁0⨁1⨁1=0
s4=c8⨁c9⨁c10⨁c11⨁c12⨁c13⨁c14⨁c15=1⨁1⨁1⨁0⨁1⨁1⨁0⨁0=1
s5=c16⨁c17⨁c18⨁c19⨁c20=0⨁0⨁0⨁1⨁1=0
Значение синдрома – s=s5s4s3s2s1=010102=1010 показывает на десятый бит