PythonCRC-32CRC-32MPEG-2循環(huán)冗余檢驗_第1頁
PythonCRC-32CRC-32MPEG-2循環(huán)冗余檢驗_第2頁
PythonCRC-32CRC-32MPEG-2循環(huán)冗余檢驗_第3頁
免費預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、PythonCRC-32CRC-32MPEG-2循環(huán)冗余檢驗參考:1. CRC(循環(huán)冗余校驗)在線計算2. CRC32/MPEG23. python求crc32值的法4. 關(guān)于python實現(xiàn)CRC32的應(yīng)和總結(jié)5. python crc32()函數(shù)和C+計算crc326. C# CRC32校驗 之 CRC-32/MPEG-2算法crc.pyReverts bit order of the given numberArgs:for i in range(width):if (num i) &1 != 0:reflected |= 1 (width - 1 - i)return reflecte

2、ddef make_table(width):Create static sized CRC lookup table and initialize it with 0.initializer =(0 for _ in range(256)if width =8:return array.array(B, initializer)elif width =16:return array.array(Q, initializer)else:width (int): Number of bits of the polynomialpolynomial (int): CRC polynomialdef

3、 _init_(self, width, polynomial, initial_value, final_xor_value,input_reflected , result_reflected):self.width =widthself.msb_mask =0 x01 (self.width - 1)self.reflected_table =Nonedef _call_(self, value):Compute the CRC checksum with respect to the model parameters by usingself.table =self.calculate

4、_crc_table()crc =self.initial_valuefor cur_byte in value:if self.input_reflected:cur_byte =reflect(cur_byte, 8)# Update the MSB of the CRC value with the next input bytecrc =(crc (cur_byte (self.width - 8) &self.cast_mask# This MSB byte value is the index into the lookup tablecrc =(crc 8) &self.cast

5、_mask# XOR-ing remainder from the loopup tablecrc =crc self.reflected_tableindex# Final XBORreturn crc self.final_xor_valuefor divident in range(256):cur_byte =(divident (self.width - 8) &self.cast_maskcur_byte = self.polynomialelse:cur_byte =1reflected_divident =reflect(divident, 8)cur_byte = self.

6、polynomialelse:=(8, 0 x1d, 0 xff, 0 xff, False, False)crc8_cdma2000crc8_darccrc16_ccit_zerocrc16_arccrc16_cdma2000crc16_dds_110crc16_dect_rcrc16_dect_xcrc16_dnpcrc16_acrc16_kermitcrc16_modbuscrc16_x25crc16_xmodem=(16, 0 x1021, 0 x0000, 0 x0000, False, False)crc32crc32_d=(32, 0 xa833982b, 0 xffffffff

7、, 0 xffffffff, True, True)=(32, 0 x04c11db7, 0 xffffffff, 0 x00000000, False, False)=(32, 0 x04c11db7, 0 x00000000, 0 xffffffff, False, False)=(32, 0 x814141ab, 0 x00000000, 0 x00000000, False, False)=(32, 0 x04c11db7, 0 xffffffff, 0 x00000000, True, True)=(32, 0 x000000af, 0 x00000000, 0 x00000000, False, False)assert crc16_ccit_zero(bHello world!) = 0 x39dbassert crc16_x25(bHello world!) = 0 x8edbcrc_test.pybyte_length =len(tempData)for i in range(byte_

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論