Forum Webscript.Ru

Программирование => Perl => Тема начата: APL от 06 Июня 2012, 15:44:45

Название: [Решено] Вычисление контрольной суммы CRC32
Отправлено: APL от 06 Июня 2012, 15:44:45
Столкнулся с проблемой...

Есть процедурка вычисления crc32. Модули использовать не хочу, есть ограничения. Вынужден был найти исходник сам.

Но на x64 побитовый сдвиг работает не так, как на x32.

В связи с чем есть вопросы:

1. Подскажите как делать побитовый сдвиг на x64 чтобы результат был как с 32-битными числами.

2. Может подскажете универсальный алгоритм crc32 для 32- и 64-разрядных систем?

Заранее спасибо!

-----------------------------------

нужно было в операциях делать еще & 0xFFFFFFFF в случае x64, а x32 или x64 мы узнать. Если -1 >> 31 == 1, то x32, иначе x64