RosettaCodeData/Task/CRC-32/EasyLang/crc-32.easy
2026-02-01 16:33:20 -08:00

25 lines
543 B
Text

global table[] .
proc mktable .
for i = 0 to 0xff
rem = i
for j to 8
if bitand rem 1 = 1
rem = bitxor bitshift rem -1 0xedb88320
else
rem = bitshift rem -1
.
.
table[] &= rem
.
.
func crc32 s$ .
crc = 0xffffffff
for c$ in strchars s$
c = strcode c$
crb = bitxor bitand crc 0xff c
crc = bitxor (bitshift crc -8) table[crb + 1]
.
return bitand bitnot crc 0xffffffff
.
mktable
print crc32 "The quick brown fox jumps over the lazy dog"