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

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

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

Листинг программы
  1. unsigned long Crc32(unsigned char *buf, unsigned long len)//Алгоритм расчета CRC
  2. {
  3. unsigned long crc_table[256];
  4. unsigned long crc;
  5. for (int i = 0; i < 256; i++)
  6. {
  7. crc = i;
  8. for (int j = 0; j < 8; j++)
  9. crc = crc & 1 ? (crc >> 1) ^ 0xEDB88320UL : crc >> 1;
  10. crc_table[i] = crc;
  11. };
  12. crc = 0xFFFFFFFFUL;
  13. while (len--)
  14. crc = crc_table[(crc ^ *buf++) & 0xFF] ^ (crc >> 8);
  15. return crc ^ 0xFFFFFFFFUL;
  16. };
Просто построчно написать комментарии и всё

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

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

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


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

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

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

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут