![]() |
Модераторы: bsa |
![]() ![]() ![]() |
|
debil |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 12.12.2007 Репутация: нет Всего: нет |
В описании на железо ( ИРТ1730D/M ) указано как подсчитывать контрольную сумму и приведен пример на паскале. Помогите перевести на С
![]() Сколько раз сталкивался с разным железом, даже у одного производителя на каждое железо разный алгоритм подсчета контрольных сумм, никакой унификации…. Способ подсчета контрольной суммы для ИРТ1730 Для подсчета контрольной суммы необходимо выполнить следующие шаги: 1. Загружаем 16-битную беззнаковую (word) переменную (KS) всеми единицами (KS=65535). 2. Выполняем операцию "ИСКЛЮЧАЮЩЕЕ ИЛИ" над первым байтом массива, который защищается контрольной суммой, и младшим байтом переменной KS. Результат заносится в переменную KS. 3. Сдвигаем KS на 1 бит вправо, при этом самый левый бит делаем равным нулю. 4. Условные действия 4.1. Если выдвинутый бит равен 1, выполняется операция "ИСКЛЮЧАЮЩЕЕ ИЛИ" над переменной KS и числом 40961(десятичное). Результат заносится в переменную KS. 4.2. Если выдвинутый бит равен 0, выполняем переход на пункт 3. 5. Повторить пункты 3 и 4 пока не будет выполнено 8 сдвигов. 6. Повторить пункты 2,3,4 и 5 со следующим байтом массива, защищаемого контрольной суммой. 7. Содержимое полученной переменной KS и есть контрольная сумма. Пример подсчета контрольной суммы на языке паскаль
|
|||
|
||||
xvr |
|
||||||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 35 Всего: 223 |
Буйный алгоритм ![]() Уточнение - а точно подсчет начинается со 2го символа строки? Или это опечатка/баг? Еще вопрос - входая строка текстовая, или туда упакованны бинарные данные? (Предполагаю, что текстовая)
|
||||||
|
|||||||
debil |
|
|||
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 12.12.2007 Репутация: нет Всего: нет |
Спасибо всем ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |