[阅读: 382] 2005-11-25 13:16:36
function MyCrc32(Init: Cardinal; const Buf; iLen: Integer): Cardinal; assembler;
asm
// eax = Init; edx = @Buf; ecx = InLen
or ecx, ecx
jle @@done
push ebx
xor ebx, ebx
@@loop:
xor al, [edx]
inc edx
mov bl, al
shr eax, 8
xor eax, dword ptr [CRC32Table + ebx * 4]
dec ecx
jnz @@loop
pop ebx
@@done:
end;