К сожалению проблемы с пониманием CRC возникают благодаря некорректному использованию понятий - умножение и деление на полином и т.д.
Ближе к истине то, что CRC является обычной хеш-функцией или "сверткой", не более чем. В процессе работы входной массив данных "перемешивает" строку фиксированной длины: или по-другому - последовательно сдвигаем массив данных, если на выходе "1" - делаем XOR со строкой CRC и все !
Декодирование - это не умножение на полином, а точно такое же хеширование. К сжалению попытка математизировать эту простую функцию привела к хаосу.
Проще понять ее на "железе" - в инете есть примеры сдвиговых регистров CRC.
|