最近在看 <<计算机网络>> 看到网络传输错误是非常普遍的,所以有了差错检查和纠正,分别是检错码和纠错码
- 检错码对数据进行检验,是否有问题,有问题向发送方返回错误,可能要求重新发数据包/帧
- 纠错码对接收的数据先校验,数据有问题的话,接收方可以自行进行处理,修复
下面我们来看看纠错码的一种实现 - 汉明码
汉明码在传输的消息流中插入验证码,当计算机存储或移动数据时,可能会产生数据位错误,以侦测并更正单一比特错误。由于汉明编码简单,它们被广泛应用于内存(RAM)
标准
- 二进制表示位置时,只有一个1的位置(2的整数次幂)为校验位
10,100,1000 - 二进制表示位置时,至少有两个1的位置为数据位
根据上面两个标准,给你一个数据,你能给出拼接后的数据/帧吗
1011
数据码拼接校验码
假设校验码总数为 n ,我们可以根据上面的第一个标准拼接处来
位置 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
---|