Сейчас на форуме: jinoweb, bartolomeo (+5 невидимых)

 eXeL@B —› Программирование —› АльтрЭго CRC32
Посл.ответ Сообщение

Ранг: 2.0 (гость)
Активность: 0.010
Статус: Участник

Создано: 05 сентября 2016 14:09 · Поправил: tonystark
· Личное сообщение · #1

Здравствуйте Всем.

Читая работы CRC32 решил использовать его не стандартно, т.к. в алгоритме частное забывают, я решил как раз его и использовать под свои нужны. Делать оборот из строки CRC32 не сложно, но проблема возникла при ее обратке, а именно из последовательности 0 и 1 из нужной CRC32 делать другое CRC32
например при 1100-0110-1001-0000 получить -> 1010-1100-1111-0001?

В целом задача перевернутая и может у кого-то получиться? зная остаток+частное+делитель - находить делимое? при этому операция должна работать в обе стороны.

может может кто то подсказать? как такое получить?

есть код получения crc16 на php, но обратки из сrc16 прошую нету(
т.е. по факту надо делать обратное нижнему алгоритму, но так что бы была совместимость с ним.
Code:
  1. function crc16($data)
  2. {
  3.    $crc = 0xFFFF;
  4.    for ($= 0; $i < strlen($data); $i++)
  5.    {
  6.      $crc ^=ord($data[$i]);
  7.      
  8.         for ($= 8; $j !=0; $j--)
  9.         {
  10.             if (($crc & 0x0001) !=0)
  11.             {
  12.                 $crc >>= 1;
  13.                 $crc ^= 0xA001;
  14.             }
  15.             else
  16.             {
  17.                 $crc >>= 1;
  18.             }
  19.         }
  20.     }    
  21.    return $crc;
  22. }
  23. echo dechex(crc16('AA'));



 eXeL@B —› Программирование —› АльтрЭго CRC32
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати