помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°

ΠšΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠ΄Π° Π₯эмминга

ВСорСтичСская Ρ‡Π°ΡΡ‚ΡŒ

Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ k – ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… розрядов. И Ρ‚Π°ΠΊ Ссли Ρƒ нас Π·Π°Π΄Π°Ρ‡Π° Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ m Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… разрядов, Ρ‚ΠΎ k Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡ‚ΡŒ нСравСнство 2k β‰₯ k+m+1 ΠΈΠ»ΠΈ k β‰₯ log2(k+m+1)
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΉΡ‚ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ значСния k для Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… m:
помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°
Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΡΠ°ΠΌΠΎΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉΡΡ ΠΊΠΎΠ΄ m+k разрядов. ΠŸΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΠΌ.
Π—Π°ΠΏΠΈΡˆΠ΅ΠΌ эти разряды ΠΈ ΠΏΡ€ΠΎΠ½ΡƒΠΌΠ΅Ρ€ΡƒΠ΅ΠΌ Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΉ систСмС.

помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°

Π‘ΡƒΠ΄Π΅ΠΌ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ разряд ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ n-Ρ‚ΠΎΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠ΅, Ссли Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ прСдставлСнии эго Π½ΠΎΠΌΠ΅Ρ€Π° стоит Π΅Π΄ΠΈΠ½ΠΈΡ†Π° Π² n-Ρ‚ΠΎΠΌ разрядС.

Π‘Ρ€Π΅Π΄ΠΈ m+k разрядов ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΠΌΠ΅Ρ‚ΡŒ k разрядов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠ΅ (стСпСни Π΄Π²ΠΎΠΉΠΊΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ прСдставлСнии ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ).

Π­Ρ‚ΠΈ k разрядов ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΌΠΈ. ΠžΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ m разрядов Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ разрядами.

помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°

Π’ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ разряды пСрСписываСм наши исходныС m разрядов.

Π’ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… разрядов запишСм Ρ‚Π°ΠΊΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ (0 ΠΈΠ»ΠΈ 1), Ρ‡Ρ‚ΠΎΠ± ΠΎΠ±Ρ‰Π΅Π΅ количСство Π΅Π΄ΠΈΠ½ΠΈΡ† Π² Π΅Π³ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠ΅ Π±Ρ‹Π»Π° ΠΏΠ°Ρ€Π½ΠΎΠΉ. Для этого Π½Π°ΠΌ Π½Π°Π΄ΠΎ просто ΠΏΡ€ΠΎΡΡƒΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ Π΄Π²Π° Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… прСдставлСния Ρ‚Π΅Ρ… ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… разрядов, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… стоит Π΅Π΄ΠΈΠ½ΠΈΡ†Π°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΡ‹ ΡƒΠ·Π½Π°Π΅ΠΌ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ разряды, Π½Ρƒ ΠΈ соотвСтствСнно всС m+k Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… разрядов.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

НапримСр, Π½Π°ΠΌ Π΄Π°Π½Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ 1001000. Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС m = 7, Π·Π½Π°Ρ‡ΠΈΡ‚ k = 4.

Π—Π°ΠΏΠΈΡˆΠ΅ΠΌ наши m + k разряды.

помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°
Π£Π·Π½Π°Π΅ΠΌ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ разряды:

помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°
Π—Π°ΠΏΠΈΡˆΠ΅ΠΌ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ разряды.
помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ 01100010000

РСализация

$input = «1001000» ; // Π·Π°Π΄Π°Π΅ΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠΎΡΡ‚ΡŒ
$m = strlen($input); // ΡƒΠ·Π½Π°Π΅ΠΌ Π΄Π»ΠΈΠ½Ρƒ

$result = Array(); // Π·Π°Π²ΠΎΠ΄ΠΈΠΌ массив разрядов

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠŸΠΎΠΌΠ΅Ρ…ΠΎΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΠ΅ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ с ΠΈcпользованиСм Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠ΄ΠΎΠ²

Π­Ρ‚ΠΎ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π΅ΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΎ помСхоустойчивом ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, которая ΠΎΡ‡Π΅Π½ΡŒ Π΄ΠΎΠ»Π³ΠΎ Π»Π΅ΠΆΠ°Π»Π° Π² Ρ‡Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊΠ°Ρ…. Π’ ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΉ части Π½Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ интСрСсного с практичСской Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния β€” лишь ΠΎΠ±Ρ‰ΠΈΠ΅ свСдСния ΠΎ Ρ‚ΠΎΠΌ, Π·Π°Ρ‡Π΅ΠΌ это Π½ΡƒΠΆΠ½ΠΎ, Π³Π΄Π΅ примСняСтся ΠΈ Ρ‚.ΠΏ. Π’ Π΄Π°Π½Π½ΠΎΠΉ части Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ (самыС простыС) ΠΊΠΎΠ΄Ρ‹ для обнаруТСния ΠΈ/ΠΈΠ»ΠΈ исправлСния ошибок. Π˜Ρ‚Π°ΠΊ, ΠΏΠΎΠ΅Ρ…Π°Π»ΠΈ.

ΠŸΠΎΠΏΡ‹Ρ‚Π°Π»ΡΡ всС ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³Ρ‡Π΅ для Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ занимался ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, ΠΈ Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ особых матСматичСских Ρ„ΠΎΡ€ΠΌΡƒΠ».

Когда ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ сообщСниС ΠΎΡ‚ источника ΠΊ ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΈΠΊΡƒ, ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ ошибка (ΠΏΠΎΠΌΠ΅Ρ…ΠΈ, Π½Π΅ΠΈΡΠΏΡ€Π°Π²Π½ΠΎΡΡ‚ΡŒ оборудования ΠΈ ΠΏΡ€.). Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ, ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Ρ‚.Π΅. ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‚ сообщСниС Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰Π°Ρ сторона Π·Π½Π°Π»Π°, ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° ошибка ΠΈΠ»ΠΈ Π½Π΅Ρ‚, ΠΈ ΠΏΡ€ΠΈ ΠΌΠΎΠ³Π»Π° ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ошибки Π² случаС ΠΈΡ… возникновСния.

По сути, ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” это Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊ исходной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½ΠΎΠΉ, ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Для кодирования Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‰Π΅ΠΉ сторонС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠΎΠ΄Π΅Ρ€, Π° Π½Π° ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰Π΅ΠΉ сторонС β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ€ для получСния исходного сообщСния.
Π˜Π·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° β€” это количСство ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² сообщСнии. РассчитываСтся ΠΎΠ½Π° ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π΅:

k/(i+k), Π³Π΄Π΅
k β€” количСство ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Ρ… Π±ΠΈΡ‚,
i β€” количСство ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π±ΠΈΡ‚.

НапримСр, ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅ΠΌ 3 Π±ΠΈΡ‚Π° ΠΈ ΠΊ Π½ΠΈΠΌ добавляСм 1 ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹ΠΉ Π±ΠΈΡ‚ β€” ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ составит 1/(3+1) = 1/4 (25%).

Код с ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ Π½Π° Ρ‡Π΅Ρ‚Π½ΠΎΡΡ‚ΡŒ

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° чСтности – ΠΎΡ‡Π΅Π½ΡŒ простой ΠΌΠ΅Ρ‚ΠΎΠ΄ для обнаруТСния ошибок Π² ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, Π½ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ лишь ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΡƒΡŽ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°

помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°

ΠΠ°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: 1111
Π”Π°Π½Π½Ρ‹Π΅ послС кодирования: 11110 ( 1 + 1 + 1 + 1 = 0 (mod 2) )
ΠŸΡ€ΠΈΠ½ΡΡ‚Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: 10110 (измСнился Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π±ΠΈΡ‚)
Как ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, количСство Π΅Π΄ΠΈΠ½ΠΈΡ† Π² принятом ΠΏΠ°ΠΊΠ΅Ρ‚Π΅ Π½Π΅Ρ‡Π΅Ρ‚Π½ΠΎ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° ошибка.

ΠΠ°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: 1111
Π”Π°Π½Π½Ρ‹Π΅ послС кодирования: 11110 ( 1 + 1 + 1 + 1 = 0 (mod 2) )
ΠŸΡ€ΠΈΠ½ΡΡ‚Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅: 10010 (измСнились 2 ΠΈ 3 Π±ΠΈΡ‚Ρ‹)
Π’ принятых Π΄Π°Π½Π½Ρ‹Ρ… число Π΅Π΄ΠΈΠ½ΠΈΡ† Ρ‡Π΅Ρ‚Π½ΠΎ, ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ€ Π½Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠΊΠΎΠ»ΠΎ 90% всСх нСрСгулярных ошибок происходит ΠΈΠΌΠ΅Π½Π½ΠΎ с ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΌ разрядом, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ чСтности Π±Ρ‹Π²Π°Π΅Ρ‚ достаточно для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° ситуаций.

Код Π₯эмминга

ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹ΠΉ Π±ΠΈΡ‚ Π½Π° 2 0 = 1;
Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹ΠΉ Π±ΠΈΡ‚ Π½Π° 2 1 = 2;
Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹ΠΉ Π±ΠΈΡ‚ Π½Π° 2 2 = 4;

r1 = i1 + i2 + i4
r2 = i1 + i3 + i4
r3 = i2 + i3 + i4

Π’ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅, Ρ€Π°Π±ΠΎΡ‚Π° этого Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π½Π° ΠΎΡ‡Π΅Π½ΡŒ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ Код Π₯эмминга. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ особо ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π½Π΅ Π²ΠΈΠΆΡƒ смысла. ВмСсто этого ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½ΡƒΡŽ схСму ΠΊΠΎΠ΄Π΅Ρ€Π°:
помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°
ΠΈ Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ€Π°
помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°
(ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ, довольно Π·Π°ΠΏΡƒΡ‚Π°Π½ΠΎ, Π½ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ Π½Π°Ρ‡Π΅Ρ€Ρ‚ΠΈΡ‚ΡŒ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ)

e0,e1,e2 ΠΎΠΏΡ€Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, зависящиС ΠΎΡ‚ принятых Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ€ΠΎΠΌ Π±ΠΈΡ‚ k1 β€” k7:

e0 = k1 + k3 + k5 + k7 mod 2
e1 = k2 + k3 + k6 + k7 mod 2
e2 = k4 + k5 + k6 + k7 mod 2

Набор этих Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ e2e1e0 Π΅ΡΡ‚ΡŒ двоичная запись ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, Π³Π΄Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° ошибка ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Π”Π΅ΠΊΠΎΠ΄Π΅Ρ€ эти значСния вычисляСт, ΠΈ Ссли ΠΎΠ½ΠΈ всС Π½Π΅ Ρ€Π°Π²Π½Ρ‹ 0 (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½Π΅ получится 000), Ρ‚ΠΎ исправляСт ΠΎΡˆΠΈΠ±ΠΊΡƒ.

ΠšΠΎΠ΄Ρ‹-произвСдСния

Π’ ΠΊΠ°Π½Π°Π»Π΅ связи ΠΊΡ€ΠΎΠΌΠ΅ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹Ρ… ошибок, Π²Ρ‹Π·Π²Π°Π½Π½Ρ‹Ρ… ΡˆΡƒΠΌΠ°ΠΌΠΈ, часто Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹Π΅ ошибки, Π²Ρ‹Π·Π²Π°Π½Π½Ρ‹Π΅ ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠ½Ρ‹ΠΌΠΈ ΠΏΠΎΠΌΠ΅Ρ…Π°ΠΌΠΈ, замираниями ΠΈΠ»ΠΈ выпадСниями (ΠΏΡ€ΠΈ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ видСозаписи). ΠŸΡ€ΠΈ этом ΠΏΠΎΡ€Π°ΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ сотни, Π° Ρ‚ΠΎ ΠΈ тысячи Π±ΠΈΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ подряд. Ясно, Ρ‡Ρ‚ΠΎ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ помСхоустойчивый ΠΊΠΎΠ΄ Π½Π΅ смоТСт ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΡΡ с Ρ‚Π°ΠΊΠΎΠΉ ошибкой. Для возмоТности Π±ΠΎΡ€ΡŒΠ±Ρ‹ с Ρ‚Π°ΠΊΠΈΠΌΠΈ ошибками ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠΎΠ΄Ρ‹-произвСдСния. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ дСйствия Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΡ‘Π½ Π½Π° рисункС:
помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°
ΠŸΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΠ°Ρ информация кодируСтся Π΄Π²Π°ΠΆΠ΄Ρ‹: Π²ΠΎ внСшнСм ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΌ ΠΊΠΎΠ΄Π΅Ρ€Π°Ρ…. ΠœΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ устанавливаСтся Π±ΡƒΡ„Π΅Ρ€, Ρ€Π°Π±ΠΎΡ‚Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½Π° рисункС:
помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°
Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ слова проходят Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ помСхоустойчивый ΠΊΠΎΠ΄Π΅Ρ€, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ внСшним, Ρ‚.ΠΊ. ΠΎΠ½ ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π΅ΠΌΡƒ Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ€ находятся ΠΏΠΎ краям систСмы помСхоустойчивого кодирования. Π—Π΄Π΅ΡΡŒ ΠΊ Π½ΠΈΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Π΅ символы, Π° ΠΎΠ½ΠΈ, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, заносятся Π² Π±ΡƒΡ„Π΅Ρ€ ΠΏΠΎ столбцам, Π° выводятся построчно. Π­Ρ‚ΠΎΡ‚ процСсс называСтся ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡˆΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΠΆΠ΅Π½ΠΈΠ΅ΠΌ.

ΠŸΡ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅ строк ΠΈΠ· Π±ΡƒΡ„Π΅Ρ€Π° ΠΊ Π½ΠΈΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Π΅ символы Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ ΠΊΠΎΠ΄Π°. Π’ Ρ‚Π°ΠΊΠΎΠΌ порядкС информация пСрСдаСтся ΠΏΠΎ ΠΊΠ°Π½Π°Π»Ρƒ связи ΠΈΠ»ΠΈ записываСтся ΠΊΡƒΠ΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ. Условимся, Ρ‡Ρ‚ΠΎ ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ, ΠΈ внСшний ΠΊΠΎΠ΄Ρ‹ – ΠΊΠΎΠ΄Ρ‹ Π₯эмминга, с трСмя ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹ΠΌΠΈ символами, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΈ Ρ‚ΠΎΡ‚, ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ ошибкС Π² ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΌ словС (количСство Β«ΠΊΡƒΠ±ΠΈΠΊΠΎΠ²Β» Π½Π° рисункС Π½Π΅ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎ β€” это просто схСма). На ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΎΠΌ ΠΊΠΎΠ½Ρ†Π΅ располоТСн Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ массив памяти (Π±ΡƒΡ„Π΅Ρ€), Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ информация заносится построчно, Π° выводится ΠΏΠΎ столбцам. ΠŸΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΉ ошибки (крСстики Π½Π° рисункС Π² Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ ΠΈ Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΠΎΠΉ строках), ΠΎΠ½Π° ΠΌΠ°Π»Ρ‹ΠΌΠΈ порциями распрСдСляСтся Π² ΠΊΠΎΠ΄ΠΎΠ²Ρ‹Ρ… словах внСшнСго ΠΊΠΎΠ΄Π° ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ исправлСна.
помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°
НазначСниС внСшнСго ΠΊΠΎΠ΄Π° понятно – исправлСниС ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹Ρ… ошибок. Π—Π°Ρ‡Π΅ΠΌ ΠΆΠ΅ Π½ΡƒΠΆΠ΅Π½ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΠΊΠΎΠ΄? На рисункС, ΠΊΡ€ΠΎΠΌΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΉ, ΠΏΠΎΠΊΠ°Π·Π°Π½Π° одиночная ошибка (Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚Ρ‹ΠΉ столбСц, вСрхняя строка). Π’ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΌ словС, располоТСнном Π² Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΠΎΠΌ столбцС β€” Π΄Π²Π΅ ошибки, ΠΈ ΠΎΠ½ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ исправлСны, Ρ‚.ΠΊ. внСшний ΠΊΠΎΠ΄ рассчитан Π½Π° исправлСниС ΠΎΠ΄Π½ΠΎΠΉ ошибки. Для Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· этой ситуации ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΈ Π½ΡƒΠΆΠ΅Π½ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ исправит эту ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΡƒΡŽ ΠΎΡˆΠΈΠ±ΠΊΡƒ. ΠŸΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌΡ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ сначала проходят Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ€, Π³Π΄Π΅ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹Π΅ ошибки, Π·Π°Ρ‚Π΅ΠΌ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² Π±ΡƒΡ„Π΅Ρ€ построчно, выводятся ΠΏΠΎ столбцам ΠΈ ΠΏΠΎΠ΄Π°ΡŽΡ‚ΡΡ Π½Π° внСшний Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ€, Π³Π΄Π΅ происходит исправлСниС ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΉ ошибки.

ИспользованиС ΠΊΠΎΠ΄ΠΎΠ²-ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ ΠΌΠΎΡ‰Π½ΠΎΡΡ‚ΡŒ помСхоустойчивого ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ избыточности.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Код Π₯эмминга. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°

ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго стоит ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Код Π₯эмминга ΠΈ для Ρ‡Π΅Π³ΠΎ ΠΎΠ½, собствСнно, Π½ΡƒΠΆΠ΅Π½. На Π’ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ даётся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅:

ΠšΠΎΠ΄Ρ‹ Π₯эмминга β€” Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ извСстныС ΠΈ, вСроятно, ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΠΈΠ· ΡΠ°ΠΌΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ…ΡΡ ΠΈ ΡΠ°ΠΌΠΎΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ…ΡΡ ΠΊΠΎΠ΄ΠΎΠ². ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½Ρ‹ ΠΎΠ½ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΉ систСмС счислСния.

Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, это Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΎΠ΅-Π»ΠΈΠ±ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ΅ сообщСниС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΈ послС ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎ сСти) ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ появилась Π»ΠΈ какая-Ρ‚ΠΎ ошибка Π² этом сообщСнии (ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ ΠΈΠ·-Π·Π° ΠΏΠΎΠΌΠ΅Ρ…) ΠΈ, ΠΏΡ€ΠΈ возмоТности, Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ это сообщСниС. БСгодня, я ΠΎΠΏΠΈΡˆΡƒ самый простой Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π₯Π΅ΠΌΠΌΠΈΠ½Π³Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ лишь ΠΎΠ΄Π½Ρƒ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

Π’Π°ΠΊΠΆΠ΅ стоит ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Ρ‚ΡŒ (ΠΈ Ссли Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ) большСС количСство ошибок.

Π‘Ρ€Π°Π·Ρƒ стоит ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Код Π₯эмминга состоит ΠΈΠ· Π΄Π²ΡƒΡ… частСй. ΠŸΠ΅Ρ€Π²Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΠ΅Ρ‚ исходноС сообщСниС, вставляя Π² Π½Π΅Π³ΠΎ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… мСстах ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ (вычислСнныС особым ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ). Вторая Ρ‡Π°ΡΡ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ входящСС сообщСниС ΠΈ Π·Π°Π½ΠΎΠ²ΠΎ вычисляСт ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ (ΠΏΠΎ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΈ пСрвая Ρ‡Π°ΡΡ‚ΡŒ). Если всС вновь вычислСнныС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ, Ρ‚ΠΎ сообщСниС ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΎ Π±Π΅Π· ошибок. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС, выводится сообщСниС ΠΎΠ± ошибкС ΠΈ ΠΏΡ€ΠΈ возмоТности ошибка исправляСтся.

Как это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€.

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ°

Допустим, Ρƒ нас Π΅ΡΡ‚ΡŒ сообщСниС Β«habrΒ», ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π±Π΅Π· ошибок. Для этого сначала Π½ΡƒΠΆΠ½ΠΎ нашС сообщСниС Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Кода Π₯эмминга. Нам Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅.

помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°

На этом этапС стоит ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒΡΡ с, Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ, Π΄Π»ΠΈΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ слова, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π΄Π»ΠΈΠ½ΠΎΠΉ строки ΠΈΠ· Π½ΡƒΠ»Π΅ΠΉ ΠΈ Π΅Π΄ΠΈΠ½ΠΈΡ†, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Допустим, Ρƒ нас Π΄Π»ΠΈΠ½Π° слова Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π½Π° 16. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ нашС исходноС сообщСниС (Β«habrΒ») Π½Π° Π±Π»ΠΎΠΊΠΈ ΠΏΠΎ 16 Π±ΠΈΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΎΡ‚ΠΎΠΌ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ символ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ Π² памяти 8 Π±ΠΈΡ‚, Ρ‚ΠΎ Π² ΠΎΠ΄Π½ΠΎ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ΅ слово помСщаСтся Ρ€ΠΎΠ²Π½ΠΎ Π΄Π²Π° ASCII символа. Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π΄Π²Π΅ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ строки ΠΏΠΎ 16 Π±ΠΈΡ‚:

помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°ΠΈ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°

ПослС этого процСсс кодирования распараллСливаСтся, ΠΈ Π΄Π²Π΅ части сообщСния (Β«haΒ» ΠΈ Β«brΒ») ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‚ΡΡ нСзависимо Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°. Рассмотрим, ΠΊΠ°ΠΊ это дСлаСтся Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΏΠ΅Ρ€Π²ΠΎΠΉ части.
ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹. Они Π²ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² строго ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… мСстах β€” это ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ с Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ, Ρ€Π°Π²Π½Ρ‹ΠΌΠΈ стСпСням Π΄Π²ΠΎΠΉΠΊΠΈ. Π’ нашСм случаС (ΠΏΡ€ΠΈ Π΄Π»ΠΈΠ½Π΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ слова Π² 16 Π±ΠΈΡ‚) это Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ 1, 2, 4, 8, 16. БоотвСтствСнно, Ρƒ нас ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ 5 ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΡ‚ (Π²Ρ‹Π΄Π΅Π»Π΅Π½Ρ‹ красным Ρ†Π²Π΅Ρ‚ΠΎΠΌ):

Π‘Ρ‹Π»ΠΎ:
помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°

Π‘Ρ‚Π°Π»ΠΎ:
помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π΄Π»ΠΈΠ½Π° всСго сообщСния ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ»Π°ΡΡŒ Π½Π° 5 Π±ΠΈΡ‚. Π”ΠΎ вычислСния самих ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΡ‚, ΠΌΡ‹ присвоили ΠΈΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Β«0Β».

ВычислСниС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΡ‚.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ Π±ΠΈΡ‚Π°. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ Π±ΠΈΡ‚Π° зависит ΠΎΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π±ΠΈΡ‚ (ΠΊΠ°ΠΊ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎ), Π½ΠΎ Π½Π΅ ΠΎΡ‚ всСх, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚ Ρ‚Π΅Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ этот ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΡ‚ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚. Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Π·Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±ΠΈΡ‚Ρ‹ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ ΠΊΠ°ΠΆΠ΄Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Π±ΠΈΡ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ Π·Π°ΠΊΠΎΠ½ΠΎΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ: ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Π±ΠΈΡ‚ с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ N ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ всС ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ N Π±ΠΈΡ‚ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ N Π±ΠΈΡ‚, начиная с ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ N. НС ΠΎΡ‡Π΅Π½ΡŒ понятно, Π½ΠΎ ΠΏΠΎ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅, Π΄ΡƒΠΌΠ°ΡŽ, станСт яснСС:
помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°
Π—Π΄Π΅ΡΡŒ Π·Π½Π°ΠΊΠΎΠΌ Β«XΒ» ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½Ρ‹ Ρ‚Π΅ Π±ΠΈΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Π±ΠΈΡ‚, Π½ΠΎΠΌΠ΅Ρ€ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ справа. Π’ΠΎ Π΅ΡΡ‚ΡŒ, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Π±ΠΈΡ‚ Π½ΠΎΠΌΠ΅Ρ€ 12 контролируСтся Π±ΠΈΡ‚Π°ΠΌΠΈ с Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ 4 ΠΈ 8. Ясно, Ρ‡Ρ‚ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΈΠΌΠΈ Π±ΠΈΡ‚Π°ΠΌΠΈ контролируСтся Π±ΠΈΡ‚ с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ N Π½Π°Π΄ΠΎ просто Ρ€Π°Π·Π»ΠΎΠΆΠΈΡ‚ΡŒ N ΠΏΠΎ стСпСням Π΄Π²ΠΎΠΉΠΊΠΈ.

Но ΠΊΠ°ΠΊ ΠΆΠ΅ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ Π±ΠΈΡ‚Π°? ДСлаСтся это ΠΎΡ‡Π΅Π½ΡŒ просто: Π±Π΅Ρ€Ρ‘ΠΌ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Π±ΠΈΡ‚ ΠΈ смотрим сколько срСди ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… ΠΈΠΌ Π±ΠΈΡ‚ΠΎΠ² Π΅Π΄ΠΈΠ½ΠΈΡ†, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ число ΠΈ, Ссли ΠΎΠ½ΠΎ Ρ‡Ρ‘Ρ‚Π½ΠΎΠ΅, Ρ‚ΠΎ ставим ноль, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ставим Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ. Π’ΠΎΡ‚ ΠΈ всё! МоТно ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, Ссли число Ρ‡Ρ‘Ρ‚Π½ΠΎΠ΅, Ρ‚ΠΎ ставим Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС, ставим 0. Π“Π»Π°Π²Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² Β«ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉΒ» ΠΈ Β«Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉΒ» частях Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π±Ρ‹Π» ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ². (ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚).
Высчитав ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ для нашСго ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ слова ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:
помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°
ΠΈ для Π²Ρ‚ΠΎΡ€ΠΎΠΉ части:
помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°

Π’ΠΎΡ‚ ΠΈ всё! ΠŸΠ΅Ρ€Π²Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π°.

Π”Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ исправлСниС ошибок.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, допустим, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° сообщСниС, Π½ΠΎ ΠΎΠ½ΠΎ ΠΏΡ€ΠΈΡˆΠ»ΠΎ ΠΊ нас с ошибкой. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Ρ‚Π°ΠΊΠΎΠ΅ (11-Ρ‹ΠΉ Π±ΠΈΡ‚ пСрСдался Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ):
помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°
Вся вторая Ρ‡Π°ΡΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Π½ΠΎΠ²ΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ всС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ (Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ части) ΠΈ ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ ΠΈΡ… с ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΌΠΈ Π±ΠΈΡ‚Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ. Π’Π°ΠΊ, посчитав ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ с Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ 11-Ρ‹ΠΌ Π±ΠΈΡ‚ΠΎΠΌ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρƒ:
помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°. Π€ΠΎΡ‚ΠΎ помСхоустойчивоС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°
Как ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ ΠΏΠΎΠ΄ Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ: 1, 2, 8 Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΆΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΌΠΈ Π±ΠΈΡ‚Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ просто слоТив Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΡ‚ (1 + 2 + 8 = 11) ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎΠ³ΠΎ Π±ΠΈΡ‚Π°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ просто ΠΈΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π² Π΅Π³ΠΎ ΠΈ отбросив ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ исходноС сообщСниС Π² ΠΏΠ΅Ρ€Π²ΠΎΠ·Π΄Π°Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅! ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ поступаСм со Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ сообщСния.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅.

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, я взял Π΄Π»ΠΈΠ½Ρƒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ сообщСния ΠΈΠΌΠ΅Π½Π½ΠΎ 16 Π±ΠΈΡ‚, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠ½Π΅ каТСтся, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Π°Ρ для рассмотрСния ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° (Π½Π΅ слишком длинная ΠΈ Π½Π΅ слишком короткая), Π½ΠΎ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅ Π΄Π»ΠΈΠ½Ρƒ ΠΌΠΎΠΆΠ½ΠΎ Π²Π·ΡΡ‚ΡŒ Π»ΡŽΠ±ΡƒΡŽ. Волько стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΉ простой вСрсии Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π½Π° ΠΎΠ΄Π½ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ΅ слово ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅.

На написаниС этого Ρ‚ΠΎΠΏΠΈΠΊΠ° мСня ΠΏΠΎΠ΄Π²ΠΈΠ³Π»ΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π² поискС я Π½Π΅ Π½Π°ΡˆΡ‘Π» Π½Π° Π₯Π°Π±Ρ€Π΅ статСй Π½Π° эту Ρ‚Π΅ΠΌΡƒ (Ρ‡Π΅ΠΌΡƒ я Π±Ρ‹Π» ΠΊΡ€Π°ΠΉΠ½Π΅ ΡƒΠ΄ΠΈΠ²Π»Ρ‘Π½). ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ я Ρ€Π΅ΡˆΠΈΠ» отчасти ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ эту ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ ΠΈ максимально ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ этот Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. Π― Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎ Π½Π΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠ» Π½ΠΈ ΠΎΠ΄Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹, Π΄Π°Π±Ρ‹ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ своими словами донСсти процСсс Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠŸΠΎΠΌΠ΅Ρ…ΠΎΡƒΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΠ΅ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ Ρ…Π΅ΠΌΠΌΠΈΠ½Π³Π°

Код Π₯э́мминга β€” Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ извСстный ΠΈΠ· ΠΏΠ΅Ρ€Π²Ρ‹Ρ… ΡΠ°ΠΌΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ…ΡΡ ΠΈ ΡΠ°ΠΌΠΎΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ…ΡΡ ΠΊΠΎΠ΄ΠΎΠ². ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΉ систСмС счислСния. ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΡƒΡŽ ΠΎΡˆΠΈΠ±ΠΊΡƒ (ошибка Π² ΠΎΠ΄Π½ΠΎΠΌ Π±ΠΈΡ‚Π΅) ΠΈ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π΄Π²ΠΎΠΉΠ½ΡƒΡŽ.

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π₯Π΅ΠΌΠΌΠΈΠ½Π³Π° для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠ³ΠΎ слова. Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π²ΠΎΠ·ΡŒΠΌΡ‘ΠΌ 15-Π±ΠΈΡ‚ΠΎΠ²ΠΎΠ΅ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠ΅ слово x1…x15, хотя Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π΅Π½ для ΠΊΠΎΠ΄ΠΎΠ²Ρ‹Ρ… слов любой Π΄Π»ΠΈΠ½Ρ‹. Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½ΠΎΠΉ Π½ΠΈΠΆΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС Π΄Π°Π½Ρ‹ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ Π² ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΌ словС, Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ β€” условноС ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΠΈΡ‚ΠΎΠ², Π² Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ β€” значСния Π±ΠΈΡ‚ΠΎΠ².

123456789101112131415
x1x2x3x4x5x6x7x8x9x10x11x12x13x14x15
100100101110001

Вставим Π² ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ΅ слово ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ r0…r4 Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΈΡ… ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΉ прСдставляли собой Ρ†Π΅Π»Ρ‹Π΅ стСпСни Π΄Π²ΠΎΠΉΠΊΠΈ: 1, 2, 4, 8, 16… ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠΌ 20-разрядноС слово с 15 ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ ΠΈ 5 ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΌΠΈ Π±ΠΈΡ‚Π°ΠΌΠΈ. ΠŸΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ устанавливаСм Ρ€Π°Π²Π½Ρ‹ΠΌΠΈ Π½ΡƒΠ»ΡŽ. На рисункС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ Π²Ρ‹Π΄Π΅Π»Π΅Π½Ρ‹ Ρ€ΠΎΠ·ΠΎΠ²Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ.

1234567891011121314151617181920
x1x2x3x4x5x6x7x8x9x10x11x12x13x14x15
00100010001011100001

Π’ ΠΎΠ±Ρ‰Π΅ΠΌ случаС количСство ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΡ‚ Π² ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΌ словС Ρ€Π°Π²Π½ΠΎ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌΡƒ Π»ΠΎΠ³Π°Ρ€ΠΈΡ„ΠΌΡƒ числа, Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ большСго, Ρ‡Π΅ΠΌ количСство Π±ΠΈΡ‚ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠ³ΠΎ слова (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹); Π»ΠΎΠ³Π°Ρ€ΠΈΡ„ΠΌ округляСтся Π² Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ сторону. НапримСр, ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ΅ слово Π΄Π»ΠΈΠ½ΠΎΠΉ 1 Π±ΠΈΡ‚ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π΄Π²ΡƒΡ… ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… разрядов, 2-, 3- ΠΈΠ»ΠΈ 4-Π±ΠΈΡ‚ΠΎΠ²ΠΎΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ΅ слово β€” Ρ‚Ρ€Ρ‘Ρ…, 5…11-Π±ΠΈΡ‚ΠΎΠ²ΠΎΠ΅ β€” Ρ‡Π΅Ρ‚Ρ‹Ρ€Ρ‘Ρ…, 12…26-Π±ΠΈΡ‚ΠΎΠ²ΠΎΠ΅ β€” пяти ΠΈ Ρ‚. Π΄.

Π”ΠΎΠ±Π°Π²ΠΈΠΌ ΠΊ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ 5 строк (ΠΏΠΎ количСству ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΡ‚ΠΎΠ²), Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ помСстим ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ прСобразования. КаТдая строка Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΌΡƒ Π±ΠΈΡ‚Ρƒ (Π½ΡƒΠ»Π΅Π²ΠΎΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Π±ΠΈΡ‚ β€” вСрхняя строка, Ρ‡Π΅Ρ‚Π²Ρ‘Ρ€Ρ‚Ρ‹ΠΉ β€” ниТняя), ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ столбСц β€” ΠΎΠ΄Π½ΠΎΠΌΡƒ Π±ΠΈΡ‚Ρƒ ΠΊΠΎΠ΄ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ слова. Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ столбцС ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ прСобразования помСстим Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ этого столбца, ΠΏΡ€ΠΈΡ‡Ρ‘ΠΌ порядок слСдования Π±ΠΈΡ‚ΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ β€” младший Π±ΠΈΡ‚ располоТим Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ строкС, ΡΡ‚Π°Ρ€ΡˆΠΈΠΉ β€” Π² Π½ΠΈΠΆΠ½Π΅ΠΉ. НапримСр, Π² Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΌ столбцС ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ ΡΡ‚ΠΎΡΡ‚ΡŒ числа 11000, Ρ‡Ρ‚ΠΎ соотвСтствуСт Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΉ записи числа Ρ‚Ρ€ΠΈ: 00011.

1234567891011121314151617181920
x1x2x3x4x5x6x7x8x9x10x11x12x13x14x15
00100010001011100001
10101010101010101010
01100110011001100110
00011110000111100001
00000001111111100000
00000000000000011111

Π’ ΠΏΡ€Π°Π²ΠΎΠΉ части Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΌΡ‹ оставили пустым ΠΎΠ΄ΠΈΠ½ столбСц, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ помСстим Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ вычислСний ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΡ‚ΠΎΠ². ВычислСниС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π±ΠΈΡ‚ΠΎΠ² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Π‘Π΅Ρ€Ρ‘ΠΌ ΠΎΠ΄Π½Ρƒ ΠΈΠ· строк ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ прСобразования (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, r0) ΠΈ Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ Π΅Ρ‘ скалярноС ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ с ΠΊΠΎΠ΄ΠΎΠ²Ρ‹ΠΌ словом, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ½ΠΎΠΆΠ°Π΅ΠΌ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π±ΠΈΡ‚Ρ‹ ΠΎΠ±Π΅ΠΈΡ… строк ΠΈ Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ сумму ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠΉ. Если сумма ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π°ΡΡŒ большС Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹, Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ остаток ΠΎΡ‚ Π΅Π³ΠΎ дСлСния Π½Π° 2. Π˜Π½Ρ‹ΠΌΠΈ словами, ΠΌΡ‹ подсчитываСм сколько Ρ€Π°Π· Π² ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΌ словС ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ строкС ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ Π² ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Ρ… позициях стоят Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ ΠΈ Π±Π΅Ρ€Ρ‘ΠΌ это число ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ 2.

Если ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ этот процСсс Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Ρ… ΠΌΠ°Ρ‚Ρ€ΠΈΡ‡Π½ΠΎΠΉ Π°Π»Π³Π΅Π±Ρ€Ρ‹, Ρ‚ΠΎ опСрация прСдставляСт собой ΠΏΠ΅Ρ€Π΅ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹ прСобразования Π½Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ-столбСц ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠ³ΠΎ слова, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‡Π΅Π³ΠΎ получаСтся ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°-столбСц ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Ρ… разрядов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ Π²Π·ΡΡ‚ΡŒ ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ 2.

НапримСр, для строки r0:

r0 = (1Β·0+0Β·0+1Β·1+0Β·0+1Β·0+0Β·0+1Β·1+0Β·0+1Β·0+0Β·0+1Β·1+0Β·0+1Β·1+0Β·1+1Β·1+0Β·0+1Β·0+0Β·0+1Β·0+0Β·1) mod 2 = 5 mod 2 = 1.

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ вставляСм Π² ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠ΅ слово вмСсто ΡΡ‚ΠΎΡΠ²ΡˆΠΈΡ… Ρ‚Π°ΠΌ Ρ€Π°Π½Π΅Π΅ Π½ΡƒΠ»Π΅ΠΉ. По Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ Π² ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… строках. ΠšΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π₯эммингу Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΎ. ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ΅ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠ΅ слово β€” 11110010001011110001.

1234567891011121314151617181920
x1x2x3x4x5x6x7x8x9x10x11x12x13x14x15
00100010001011100001
101010101010101010101
011001100110011001101
000111100001111000011
000000011111111000000
000000000000000111111

Алгоритм дСкодирования ΠΏΠΎ Π₯эммингу Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π΅Π½ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ кодирования. ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° прСобразования ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ размСрности умноТаСтся Π½Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ-столбСц ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠ³ΠΎ слова ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠΉ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρ‹-столбца бСрётся ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ 2. ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½Π½Π°Ρ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°-столбСц ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π° Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Β«ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° синдромов». Π›Π΅Π³ΠΊΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠ΅ слово, сформированноС Π² соотвСтствии с Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ, описанным Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅, всСгда Π΄Π°Ρ‘Ρ‚ Π½ΡƒΠ»Π΅Π²ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ синдромов.

ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° синдромов становится Π½Π΅Π½ΡƒΠ»Π΅Π²ΠΎΠΉ, Ссли Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ошибки (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ слова ΠΏΠΎ Π»ΠΈΠ½ΠΈΠΈ связи с ΡˆΡƒΠΌΠ°ΠΌΠΈ) ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π±ΠΈΡ‚ΠΎΠ² исходного слова ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» своё Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, Ρ‡Ρ‚ΠΎ Π² ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΌ словС, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠΌ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅, ΡˆΠ΅ΡΡ‚ΠΎΠΉ Π±ΠΈΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» своё Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ с нуля Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ (Π½Π° рисункС ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΎ красным Ρ†Π²Π΅Ρ‚ΠΎΠΌ). Π’ΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Ρƒ синдромов.

1234567891011121314151617181920
r0r1x1r2x2x3x4r3x5x6x7x8x9x10x11r4x12x13x14x15
11110110001011110001
10101010101010101010s00
01100110011001100110s11
00011110000111100001s21
00000001111111100000s30
00000000000000011111s40

Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠΉ ошибкС ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° синдромов всСгда прСдставляСт собой Π΄Π²ΠΎΠΈΡ‡Π½ΡƒΡŽ запись (младший разряд Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ строкС) Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° ошибка. Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° синдромов (01100) соотвСтствуСт Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌΡƒ числу 00110 ΠΈΠ»ΠΈ дСсятичному 6, ΠΎΡ‚ΠΊΡƒΠ΄Π° слСдуСт, Ρ‡Ρ‚ΠΎ ошибка ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° Π² ΡˆΠ΅ΡΡ‚ΠΎΠΌ Π±ΠΈΡ‚Π΅.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *