生成多项式为G(x)=x4+x3+x+1, 当有效信息为110时,编成的循环冗余码为_____
时间: 2023-12-21 18:06:19 浏览: 88
首先,需要将有效信息 110 转化为二进制形式,即 0110。
然后,根据循环冗余码的生成规则,需要在有效信息末尾补上 3 个 0(多项式的次数减 1),即:0110000。
接下来,将补 0 后的信息除以生成多项式 G(x),使用模 2 算术运算,得到余数。余数即为循环冗余码。
具体计算过程如下:
| 1 1 0 0 0 0 | 0 0 |
|----------------------|----|
| 1 0 0 0 1 1 1 | |
| 1 1 0 1 0 0 | |
| 1 1 1 0 1 0 | |
| 1 1 1 1 1 1 | |
|----------------------|----|
| 0 1 1 0 1 0 | 0 |
因此,循环冗余码为 011010。
相关问题
在采用crc校验时,若生成多项式g(x)=x4+x3+x+1
采用 CRC 校验时,生成多项式 g(x) 用于计算校验码。对于 g(x)=x4+x3+x+1,它的二进制表示为 10011。
具体的校验过程如下:
1. 假设待校验的数据为 D,按位展开成二进制数 d(x)。
2. 将 d(x) 左移 g(x) 的次数(即 g(x) 的次数减一)得到一个新的数 R(x),R(x) 的次数为 g(x) 的次数。
3. 用 R(x) 除以 g(x),得到商数 Q(x) 和余数 B(x)。
4. 将 B(x) 作为校验码,附加在原数据 D 的末尾。
5. 发送的数据为 D 和 B(x) 的组合。
6. 接收方收到数据后,重复以上过程,若余数为 0,则认为数据没有错误。
注意:在以上过程中,所有的运算都是在有限域 GF(2) 上进行的,也就是说,只有 0 和 1 两个数。
在采用crc校验时,若生成多项式g(x)=x4+x3+x+1,进行模2除数
在进行模2除数运算之前,需要先将被除数和除数都转换为二进制形式。假设被除数为D(x)=1011001,除数为G(x)=x4+x3+x+1,则需要在D(x)高位补0,使得D(x)的总位数等于G(x)的次数加1,即:
```
D(x) = 01011001
G(x) = 10011
```
接下来,从D(x)的最高位开始,依次取出和G(x)同样位数的比特进行异或运算。如果结果为1,则将G(x)对应的比特全部异或到D(x)上;如果结果为0,则直接将G(x)对应的比特全部异或到D(x)上。然后将D(x)向左移动一位,继续进行上述操作,直到D(x)的位数小于等于G(x)的次数为止。
最终,余数就是最后一次模2除数运算的结果,这里余数为R(x)=111。将R(x)附加在原来的被除数后面,得到校验码为:
```
01011001111
```
其中,最后四位1111就是余数R(x)。发送方将原来的数据和校验码一起发送给接收方,接收方在收到数据后,也需要进行一次模2除数运算,如果余数为0,则表示数据没有出错;否则表示数据出现了错误。