在发送端将数据分为k段,每段均为等长的n比特。将分段1与分段2做求和操作,再逐一与分段3至k做求和操作,得到长度为n比特的求和结果。将该结果取反后作为校验和放在数据块后面,与数据块一起发送到接收端。在接收端对接收到的、包括校验和在内的所有k+1段数据求和,如果结果为零,就认为传输过程没有错误,所传数据正确,如果结果不为零,则表明发生了错误。
例如 一段二进制码 ‘1010110110’
1. 求和:0010+1011+0110=10011
2. 再对’10011’ 求和 0001+0011=0100
3. 再对’0100’取反为’1011’
‘1011’即为’1010110110’的校验码
校验的时候 先求得和 ‘0100’ 再与校验码’1011’相加为’1111’ 对’1111’取反 为’0’ 则传输结果正确 反之则传输结果错误