Я пытаюсь преобразовать код C в Delphi / паскаль, но почему-то я не могу заставить его работать, мой подход был такой:
function CheckLRC(s : PChar) : Char;
var
sum : char;
begin
sum := #0;
while (^s <> #0) do
begin
sum := (sum XOR ^s);
inc (s)
end;
result := sum;
end;
Исходный код C был:
Set LRC = 0
For each byte b in the buffer
do
Set LRC = (LRC + b) AND 0xFF
end do
Set LRC = (((LRC XOR 0xFF) + 1) AND 0xFF)
Надеюсь, кто-нибудь сможет мне помочь и сможет подтвердить, что это правильный способ сделать контрольную сумму LRC?