Я по этому примеру и делаю.
crc должен принимать значение $FFFF (данные с
вики) ->
Код:
Name : CRC-16
Poly : 0x8005 x^16 + x^15 + x^2 + 1
Init : 0xFFFF
Revert: true
XorOut: 0x0000
Check : 0x4B37 ("123456789")
MaxLen: 4095 байт (32767 бит) - обнаружение
одинарных, двойных, тройных и всех нечетных ошибок
Но я пробовал и с 0, все равно считает не верно: так как при вычислении КС, ответ приписанный к входным данным, при повторном вычислении, должен возвращать в ответ 0.
Т.е. Вх: F70302640008 КС: 10FD.
А при Вх: F7030264000810FD КС: 00
.
Вот так должна работать программа.
А у меня получается с начальным значением Crc =$FFFF:
Вх: F70302640008 КС:712C
Вх: F70302640008712C КС: 4F55.
С начальным значением CRC = 0:
Вх: F70302640008 КС: F5D5.
Вх: F70302640008F5D5 КС: 28C5.
Еще сейчас пришлю весь код программы.