Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: CRC30
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Математика и Физика
Grym
Ищу класический алгоритм сабж, мож есть у кого? Желательно на Delphi, но пойдут любые варианты.
Grym
Anybody ?

---
алгоритм контрольной суммы придуман и реализован qualcomm inc на основе класической схемы CRC30. c начальным заполнением 3FFFFFFF и полиномом 6030B9C7 (в принципе это все что надо знать чтоб ее считать).
---

Это алгоритм для CDMA телефонов, то есть другой нельзя использовать, мож кто знает?
Oldring
Цитата(Grym @ Nov 3 2006, 17:43) *
Anybody ?

---
алгоритм контрольной суммы придуман и реализован qualcomm inc на основе класической схемы CRC30. c начальным заполнением 3FFFFFFF и полиномом 6030B9C7 (в принципе это все что надо знать чтоб ее считать).
---

Это алгоритм для CDMA телефонов, то есть другой нельзя использовать, мож кто знает?


В принципе это действительно все что нужно чтобы считать. Полезно также иметь один тестовый вектор, чтобы протестировать.
Grym
Цитата(Oldring @ Nov 3 2006, 23:05) *
Цитата(Grym @ Nov 3 2006, 17:43) *

Anybody ?

---
алгоритм контрольной суммы придуман и реализован qualcomm inc на основе класической схемы CRC30. c начальным заполнением 3FFFFFFF и полиномом 6030B9C7 (в принципе это все что надо знать чтоб ее считать).
---

Это алгоритм для CDMA телефонов, то есть другой нельзя использовать, мож кто знает?


В принципе это действительно все что нужно чтобы считать. Полезно также иметь один тестовый вектор, чтобы протестировать.



Ну дык , я уже изтестился весь, результат не равен тому что должно быть, например на ESN 12345678
CRC должна быть 2ADA03C7

Пробовал считать CRC для 4 байт ESN как он в памяти лежит и для восьми байт каждой цифры ESN, результатов ноль.

Могу еще вариантов накидать.
Oldring
Цитата(Grym @ Nov 4 2006, 14:39) *
Ну дык , я уже изтестился весь, результат не равен тому что должно быть, например на ESN 12345678
CRC должна быть 2ADA03C7

Пробовал считать CRC для 4 байт ESN как он в памяти лежит и для восьми байт каждой цифры ESN, результатов ноль.

Могу еще вариантов накидать.


CRC считается на битовых последовательностях, а не на строках - поэтому необходимо еще знать как преобразовать тестовые вектора в битовые последовательности. wink.gif

Вообще говоря, у меня тоже с ходу не получилось - так что возможно кто-то где-то где-нибудь просто ошибся. Или пользуется нестандартными соглашениями, скажем при записи полинома.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.