Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.05.19;
Скачать: CL | DM;

Вниз

Вычисление CRC CCITT   Найти похожие ветки 

 
Dronchik1173 ©   (2012-10-23 23:11) [0]

Нужно вычислить CRC. Помогите с примером кода. Все, что нашел в инете не выдает правильной КС.

Вот задача из мануала:
The checksum is a 16-bit word. The polynomial used for CRC calculation is defined in CCITT X.25 and UIT V.41. [*CRC] denotes proper placement of the checksum in commands and responses.

Example:
x 13 52 27 *53A2

или

ping *2e23
pong *BD8C
------------------------

Буду рад помощи.


 
Rouse_ ©   (2012-10-23 23:15) [1]


> Все, что нашел в инете не выдает правильной КС.

А что сам делал для решения задачи?


 
DVM ©   (2012-10-24 00:28) [2]


> Dronchik1173 ©   (23.10.12 23:11) 

выбирай какой надо http://narod.ru/disk/62865440001.a58cf0cf9a3d275e032ce79652a0c61d/uCRC.pas.html


 
Sha ©   (2012-10-24 01:17) [3]

> DVM

основательно )


 
Германн ©   (2012-10-24 01:35) [4]


> основательно )

Да. Весьма солидный набор вариантов!


 
Германн ©   (2012-10-24 01:39) [5]

К этому набору сделать демку считающую CRC по выбранному из списка алгоритму для введенного пользователем набора байт - цены бы такой демке не было бы! :)


 
kilkennycat ©   (2012-10-24 01:47) [6]

ага, и чтоб результаты графиками, скорость, загрузка процессора, свободное место на диске и т.д. сравнивать визуально удобнее.


 
Германн ©   (2012-10-24 01:58) [7]


> kilkennycat ©   (24.10.12 01:47) [6]
>
> ага, и чтоб результаты графиками, скорость, загрузка процессора,
>  свободное место на диске и т.д. сравнивать визуально удобнее.
>
>

Не Костя. Дело в том, что CRC считают многие и в программах для РС и в программах для МК. Но считают очень по разному.
А как именно считают не сообщается!


 
kilkennycat ©   (2012-10-24 03:28) [8]

http://mh-nexus.de/en/hxd/ - этот редактор позволяет вычислить не только по стандарту, но и кастомный.


 
DVM ©   (2012-10-25 22:08) [9]


> Германн ©   (24.10.12 01:58) [7]


> А как именно считают не сообщается!

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


 
han_malign   (2012-10-26 08:31) [10]


> какой алгоритм неизвестно, вот решил раз и навсегда поставить точку

- может еще контрольная сумма Флетчера попасться(8-бит - в DECT применяется) и Adler-32(ZLIB)...


 
Jeer ©   (2012-10-26 10:02) [11]

Может кому пригодится:

http://s019.radikal.ru/i617/1210/45/74cff76dcf35.jpg


 
DVM ©   (2012-10-26 10:29) [12]


> han_malign   (26.10.12 08:31) [10]


> может еще контрольная сумма Флетчера попасться

я такой не нашел, есть только CRC-16-Fletcher (Used in Adler-32 A & B CRCs) но это не CRC на самом деле, это Checksum поэтому в данном модуле ее нет, она рассчитывается по другому. http://en.wikipedia.org/wiki/Fletcher%27s_checksum


> Adler-32(ZLIB)...

CRC-32-Adler (Zlib) это тоже на самом деле не CRC, а checksum.
http://en.wikipedia.org/wiki/Adler-32

Но и то и другое можно в принципе добавить.



Страницы: 1 вся ветка

Текущий архив: 2013.05.19;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.008 c
15-1357803286
O'ShinW
2013-01-10 11:34
2013.05.19
GetLastError своими руками.


15-1358368204
Юрий
2013-01-17 00:30
2013.05.19
С днем рождения ! 17 января 2013 четверг


15-1358109002
Юрий
2013-01-14 00:30
2013.05.19
С днем рождения ! 14 января 2013 понедельник


15-1358022631
Юрий
2013-01-13 00:30
2013.05.19
С днем рождения ! 13 января 2013 воскресенье


15-1358139314
Дмитрий С
2013-01-14 08:55
2013.05.19
Пространства между строками.