校驗碼工作原理解析
元件故障\噪聲干擾等各種因素常常導(dǎo)致計算機在處理信息過程中出現(xiàn)錯誤。為了防止錯誤,可將信號采用專門的邏輯線路進行編碼以檢測錯誤,甚至校正錯誤。通常的方法是,在每個字上添加一些校驗位,用來確定字中出現(xiàn)錯誤的位置。
最簡單且應(yīng)用廣泛的檢錯碼是采用一位校驗位的奇校驗或偶校驗。
設(shè)x=(x0x1…xn-1)是一個n位字,則奇校驗位定義為
=x0⊕x1⊕…⊕xn-1??????? (2.15)
式中⊕代表按位加,表明只有當x中包含有奇數(shù)個1時,才使=1,即C=0。
同理,偶校驗位C定義為
C=x0⊕x1⊕…⊕xn-1??????? (2.16)
即x中包含偶數(shù)個1時,才使C=0。
假設(shè)一個字x從部件 A 傳送到部件 B。在源點 A,校驗位C可用上面公式算出來,并合在一起將(x0x1…xn-1C)送到B。假設(shè)在B點真正接收到的是x=(x'0x'1…x'n-1C '),然后計算
F=x'0⊕x'1⊕…⊕x'n-1⊕C'
若F=1,意味著收到的信息有錯,若F=0,表明x字傳送正確。奇偶校驗提供奇數(shù)個錯誤檢測,無法檢測偶數(shù)個錯誤,更無法識別錯誤信息的位置。
[例7]已知下表中左面一欄有5個字節(jié)的數(shù)據(jù)。請分別用奇校驗和偶校驗進行編碼,填在中間一欄和右面一欄。
[解:]
假定最低一位為校驗位,其余高8位為數(shù)據(jù)位,列表如下。從中看出,校驗位的值取0還是取1, 是由數(shù)據(jù)位中1的個數(shù)決定的。
非常好我支持^.^
(4) 80%
不好我反對
(1) 20%
相關(guān)閱讀:
- [電子說] 使用MODBUS協(xié)議的時候可以不用設(shè)置數(shù)據(jù)幀格式了嗎? 2024-01-30
- [電子說] CRC校驗碼的多種Verilog實現(xiàn)方式 2023-11-12
- [電子說] 循環(huán)冗余校驗碼(CRC)的基本原理及生成方法 2023-11-03
- [電子說] 如何在IAR Embedded Workbench中配置生成對應(yīng)代碼區(qū)域的CRC校驗碼 2023-10-27
- [電子說] CRC校驗碼的多種Verilog實現(xiàn)方式 2023-06-21
- [電子說] 工控常用LRC XOR累加和CRC校驗工具校驗碼自動生成軟件多計算方式 2022-11-25
- [電子說] 計算機組成原理—校驗碼 2023-05-25
- [可編程邏輯] 基于FPGA的CRC校驗碼生成器設(shè)計 2022-11-16
( 發(fā)表人:admin )