Вниз
Скачать: CL | DM;

Кто знает C(си), помогите плз. перевести   Найти похожие ветки 

 
TRyaSS ©   (2004-11-09 15:47) [0]

такой фрагмент кода

unsigned Hash(char Byte, char nbit, unsigned CRC)
{
for (int i = 0; i < nbit; i++, Byte <<= 1)
 {
   if (  ( Byte ^ (CRC>>8) ) & 0x80  )
     {
   CRC <<= 1;  CRC ^= 0x8F57;
     }
   else  CRC <<= 1;
 }
return CRC;
}

Заранее благодарен.


 
Reindeer Moss Eater ©   (2004-11-09 16:18) [1]

c2pas.exe

Останется немного подправить заголовок цикла.


 
wicked ©   (2004-11-09 16:21) [2]

дословно вроде так:
function Hash(_byte, nbit: byte; crc: cardinal): cardinal;
var i: integer;
begin
   for i := 0 to nbit - 1 do begin
       if ((_byte xor (crc shr 8)) and $80) <> 0 then
           crc := (crc shl 1) and $8F57;
       else
           crc := crc shl 1;
       _byte := _byte shl 1;
   end;
   Result := crc;
end;


 
wicked ©   (2004-11-09 16:29) [3]

упс....
вместо
> crc := (crc shl 1) and $8F57;

читать
> crc := (crc shl 1) xor $8F57;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.029 c
3-1099433093
Sergy Ivanec
2004-11-03 01:04
2004.11.28
Вопрос по interbase


6-1095681156
Senator
2004-09-20 15:52
2004.11.28
TServerSocket


6-1095624621
Klopan
2004-09-20 00:10
2004.11.28
Scan of 21, 80 ports


1-1100506148
Lera
2004-11-15 11:09
2004.11.28
Длинна слова.


14-1100435106
Piter
2004-11-14 15:25
2004.11.28
Запрет автомобилей




   Наверх