FNV を使用して、32 ビット OS でファイルをハッシュしています。64 ビット OS でコードを使用すると、同じコードのハッシュ結果が異なるのはなぜですか?
これが私のコードです:
function gethash(const dwOffset: PByteArray; const dwLen: DWORD;
const offset_basis: DWORD): DWORD;
var
i: integer;
begin
Result := offset_basis;
try
{$R-}{$I-}
for i := 0 to dwLen - 1 do
Result := (Result * 16777619) xor DWORD(dwOffset^[i]);
{$R+}{$I+}
except
;
end;
end;