![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Код:
void Decode_Code_DynamicData(unsigned char Divider, unsigned char LCounter, unsigned char HCounter, unsigned char SNumber,int Length, unsigned char* Data)
{
int k;
int i;
int j = LCounter+SNumber+5;
j=j%0x10000;
for (i=10;i<Length;i++)
{
k = j / Divider;
k=k%256;
Data[i]^=Polynom[k];
j+=(HCounter+SNumber+5);
j=j%0x10000;
}
} |
|
#2
|
||||
|
||||
|
Код:
procedure Decode_Code_DynamicData(Divider:Byte; LCounter:Byte; HCounter:Byte; SNumber:Byte; Length:integer; Data:PByte)
var
k,
i,
j:integer;
begin
j:=LCounter+SNumber+5;
j:=j mod $10000;
for i:=10 to Length do
begin
k:=Round(j/Divider);
k:=k mod 256;
Data[i]:=Polynom[k];
j:=j+(HCounter+SNumber+5);
j=j mod $10000;
end;
end;вот это Data[i]^ привело в замешательство, судя по этому в Delphi (без .NET) такого нет может еще что с типами в объявлении функции напутал, а в общем самому такое с помощью интернетов можно перевести поправил.... k типа integer, поэтому k:=Round(j/Divider); Последний раз редактировалось cotseec, 18.07.2012 в 18:35. |
| Этот пользователь сказал Спасибо cotseec за это полезное сообщение: | ||
movnet (18.07.2012)
| ||
|
#3
|
|||
|
|||
|
>вот это Data[i]^ привело в замешательство
на самом деле это xor Код:
Data[i]:= Data[i] xor Polynom[k]; |
| Этот пользователь сказал Спасибо icWasya за это полезное сообщение: | ||
movnet (20.07.2012)
| ||