欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

python的crc校驗

陳思宇1年前8瀏覽0評論

Python是一種非常流行的編程語言,可以幫助我們實現(xiàn)許多不同的計算和算法。其中一項非常重要的功能是crc校驗,通常用于檢查數(shù)據(jù)的完整性。

def crc_remainder(input_bitstring, polynomial_bitstring, initial_filler):
polynomial_bitstring = polynomial_bitstring.lstrip('0')
initial_padding = initial_filler * (len(polynomial_bitstring) - 1)
input_padded = list(input_bitstring + initial_padding)
while '1' in input_padded[:len(input_bitstring)]:
cur_shift = input_padded.index('1')
for i in range(len(polynomial_bitstring)):
input_padded[cur_shift + i] = str((int(polynomial_bitstring[i]) + int(input_padded[cur_shift + i])) % 2)
return ''.join(input_padded)[len(input_bitstring):]

CRC校驗的過程包括以下步驟:

  1. 在信息位添加一個預(yù)先定好的位數(shù)的 0。
  2. 計算余數(shù),如果余數(shù)非零,數(shù)據(jù)就被認(rèn)為是損壞的。

以上過程可以通過使用Python中的以下函數(shù)來輕松實現(xiàn):

def crc(string, polynomial):
crc_remainder(string, polynomial, '0')

當(dāng)我們需要檢查數(shù)據(jù)的完整性時,我們只需要輸入數(shù)據(jù)和所使用的多項式,并使用這些函數(shù)即可。這將返回CRC校驗結(jié)果,如果結(jié)果為0,則說明數(shù)據(jù)沒有被篡改。