Вверх ↑
Ответов: 26
Рейтинг: 0
#1: 2008-01-09 21:48:17 ЛС | профиль | цитата
Уважаемый Galkov, не принимайте мое замечание так близко к сердцу, я не имел намерений вас обидеть и тем более оскорбить.
Эта незначительная ошибка ни сколько ни уничижает ваших заслуг, и огромное Вам спасибо за оказанную помощь.

С моей стороны информация про ошибку действительно прозвучала невразумительно - исправляюсь:
Приведенный Вами, вышеуказанный код, в сообщении от 30 Dec 2007 00:55 без изменений и дополнений был скомпилирован в среде разработки HiAsm компилятором FPC.
При использовании, полученной в результате компилирования, программы в расчете CRC16 с полиномом A001, были получены следующие результаты:

для введенного значения "0" получен результат "BF54"
для введенного значения "1" получен результат "7E94"
для введенного значения "2" получен результат "3E95"
для введенного значения "3" получен результат "FF55"
для введенного значения "4" получен результат "BE97"

Сверяя полученыые результаты с достоверно извесными данными указанными мною в сообщении от 09 Jan 2008 18:31 - можно сделать вывод о неверности вычислений CRC16 с полиномом A001 данной программой.

Еще есть возражение по сказанному Вами:
Тем более, что ошибке очень сложно "закрасться", если ничего нового не пишется, а производится копирование Вашего кода


Ну во первых код не мой, а мною приведенный.
Во вторых не лукавьте, код был Вами модифицирован в строках:
обьявление цикла у вас "for i:=1 to length(s) do begin"
в оригинале "for i:=0 to cwSize-1 do begin"
строка получения результата у вас "_hi_CreateEvent(D,@onResult, bCRCHi shl 8 + bCRCLo)"
в оригинале "Result:=IntToHex((bCRCHi*$100 + bCRCLo),2)"
"if Length(Result)=3 then Result:='0'+Result"

Собственно в этих строках и заключен весь смысл вычисления.
Если бы нужно было просто скопировать я бы не просил помощи на форуме, а взял бы и скопировал. Но к сожалению я плохо знаю синтаксис языка и не знаю многих тонкостей Delphi, и поэтому я здесь.

Кстати у nesco все получилось, и работает, и считает правильно, хотя он тоже брал за основу мною приведенный код.
Разные люди - разные подходы - разные результаты.

И еще раз Вам говорю, не принимайте мое замечание так близко к сердцу. Людям свойственно ошибаться, это их нормальное состояние.

карма: 1

0