ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
11 июля
397134
Chum_A (25.03.2013 09:37, просмотров: 2744)
Общеупотребительный (в интернетах полно калькуляторов) алгоритм SUM32, для 32-х битных слов sum += (u8)(*i) + (u8)(*i >> 8) + (u8)(*i >> 16) + (u8)(*i >> 24) обнаружит (при объёме массива данных до 2^32/255 байт) любую одн одиночную ошибку. Пропускает ошибки типа перестановки бита "одного веса" в разных байтах (т.е. в одном байте прибыло, в другом убыло). С этой позиции модифицированный алгоритм sum += (u16)(*i) + (u16)(*i >> 16) выглядит несколько лучше и при объёме массива до 32К 32-х битных слов слов вычисляет и любую одиночную ошибку. Вопрос, почему нигде нет ссылок, что кто-то его применял? P.S. Да, алгоритмы CRC в т.ч. и CRC32 просьба не вспоминать :).