Кто может пояснить как работает этот алгоритм подсчета контрольной суммы? - C (СИ)

Узнай цену своей работы

Формулировка задачи:

unsigned long Crc32(unsigned char *buf, unsigned long len)//Алгоритм расчета CRC
{
unsigned long crc_table[256];
unsigned long crc;
for (int i = 0; i < 256; i++)
{
crc = i;
for (int j = 0; j < 8; j++)
crc = crc & 1 ? (crc >> 1) ^ 0xEDB88320UL : crc >> 1;
crc_table[i] = crc;
};
crc = 0xFFFFFFFFUL;
while (len--)
crc = crc_table[(crc ^ *buf++) & 0xFF] ^ (crc >> 8);
return crc ^ 0xFFFFFFFFUL;
};
Просто построчно написать комментарии и всё

Решение задачи: «Кто может пояснить как работает этот алгоритм подсчета контрольной суммы?»

textual
Листинг программы
printf("c = %X\n", Crc32("123456789", 9));

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.267 из 5