中国开发网: 论坛: 程序员情感CBD: 贴子 246330
李战
改写了一下,估计是最快的CRC32算法了
function CRC32(const Data; Size, CRC: LongWord): LongWord;
asm
PUSH EBX
MOV EBX, EAX //EBX := @Data
MOV EAX, ECX //EAX := CRC
PUSH ESI
TEST EDX, EDX //if Size=0 then exit
JE @@exit
@@loop: MOVZX ESI, BYTE PTR [EBX]
MOVZX ECX, AL
XOR ECX, ESI
SHR EAX, 8
XOR EAX, DWORD PTR [CRC32Table + ECX*4]
INC EBX
DEC EDX
JNE @@loop
@@exit: POP ESI
POP EBX
end;
李战(leadzen)

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录