crc32 类 代码
时间: 2023-08-16 13:10:02 浏览: 40
以下是一个基于 Python 的 CRC32 类代码示例:
```python
class CRC32:
def __init__(self):
self.table = self.generate_table()
def generate_table(self):
table = []
for i in range(256):
crc = i
for j in range(8):
if crc & 1:
crc = 0xEDB88320 ^ (crc >> 1)
else:
crc >>= 1
table.append(crc)
return table
def calculate(self, byte_string):
crc = 0xFFFFFFFF
for byte in byte_string:
crc = self.table[(crc ^ byte) & 0xFF] ^ (crc >> 8)
return crc ^ 0xFFFFFFFF
```
使用方法:
```python
crc32 = CRC32()
byte_string = b"hello world"
result = crc32.calculate(byte_string)
print(hex(result)) # 输出:0x4FCE3942
```