Благодаря этому функцию можно рассматривать
целое число. Благодаря этому функцию можно рассматривать как
универсальную утилиту. По умолчанию используется полином шестнадцатой
степени, соответствующий рекомендации X.25 МККТТ (CCITT) и
используемый в системах Х.25 и XMODEM.
Некоторые примеры полиномов приведены в таблице:
Таблица 3-1. Примеры задания образующих полиномов
--------------------------------------------------------------------
Наименование Значение <nPolynomial> Полином
--------------------------------------------------------------------
Parity 3 2^1+1
LCR-8 257 2^8+1
CRC-12 5011 2^12+2^11+2^3+2^2+2^1+1
CRC-16 X.25 69665 2^16+2^12+2^5+1
CRC-16 98309 2^16+2^15+2^2+1
--------------------------------------------------------------------
Примечания
. Если параметр <nStart> опущен или имеет значение 0, то при
контроле <cString> по CRC-коду, не будет фиксироваться потеря
начальных символов CHR(0).
. Для построения блоков для протокола XMODEM можно использовать
функцию XMOBLOCK().
. CRC-кодом называется контрольная порция информации (обычно
добавляемая к основной), формируемая по правилам умножения полиномов и
позволяющая выявлять, а в некоторых случаях и исправлять ошибки,
возникающие при передаче двоичной информации.
. МККТТ - Международный Консультативный Комитет по Телефонии и
Телеграфии - международная организация, вырабатывающая рекомендации по
стандартизации технических и программных средств передачи информации.
Примеры
. Простое вычисление CRC-кода:
COM_CRC("abc") // 40406
COM_CRC("cba") // 54260
. Вычисление для последовательности строк: