basilevs Простите за цитирование самого себя, но всётаки:
Цитата: Что эквивалентно использованию одной CRC. Вплоть до времени расчета CRC-сумм, если у вас конечно программы подсчёта CRC правильные (без наворотов из-за горе-программиста)
Как алгебраически вычисление CRC32+CRC16 быстрее, чем вычисление CRC48 из-за того,что вычисление ОСТАТКА деления на ПОЛИНОМ-48 сложнее и значит дольше.
А вот алгоритмически такие полиномы реализуются через операции сдвига в регистрах, где на каждую операцию требуется одна ассемблерная команда. Возникает вопрос о том, что операнд должен целиком помещаться в регистре, а 48-битный операнд в i386 "пролетает".
Но во-вторых, 64-битные процесоры уже вовсю пошли "в народ".
В-третьих существует ассемблерная инструкция СКВОЗНОГО сдвига ДВУХ регистров.
А во-первых, те программисты, у кого от ума не горе, а только радость, для подсчета
CRC-XX используют табличные подстановки, где на ОДИН входной байт последовательности данных выполняется XX/8 подстановок по XX/8 таблицам соответственно (для CRC32 - по одному байту из 4 таблиц).
Получаем, что для CRC32+CRC16 нужно (32/8)+(16/8)=4+2=6 операций, а для CRC48 потребуется уже (48/8)=6 операций. Почувствуйте разницу.
И снова арифметика рулит!
А "залезать" в алгебру - дык, мы ведь Академиев имени ФСФ не кончали.
В-прочем, если интересно, читай P.S.
P.S. Данную тему в своё время пришлось осваивать методом "научного" тыка (ну не было у меня программисткого образования за иключением одного семетра языка FORTRAN). И даже, не смотря на в целом о-о-очень приличное образование, курса "Теория чисел" у нас не было (самому не понятно почему). Жутко комплексуя, полез я в книги, чтобы самообразованием это как-то поправить. Так вот, оказалось, что всякие университетские курсы и учебники замечательно подходят для .... доказательства теорем. А для понимания МЕХАНИКИ процесса - совсем наоборот. Мой практический опыт программирования оказался нагляднее и понятнее. И читая про знакомые вещи часто ловил себя на мысли "Экак батенька у Вас всё запуще.. то есть запутано!"
Не берусь распространять этот подход на всё программисткое образование, но определённый компромис между теорией и практикой наобходим - это точно. Причём именно компромисс, в смысле его определения - "то, с чем согласны все, но что не устраивает никого".
P.S.S А может пора закрыть ветку - два года никто не интересовался вопросом (я сам - исключение: сначала запостил, потом на дату посмотрел) ?