Кто может пояснить как работает этот алгоритм подсчета контрольной суммы? - 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));
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д