1.协议事先约定一个二进制生成表达式,本题设为110011;
2.将待发送的二进制数据串的末尾加5个0;
3.将补上0的数据串按模2除法除于生成表达式,取余数;
4.该余数就是该二进制数据串的循环冗余码。
生成多项式: G(x)=x5+x4+x+1 (r=5) ,生成码: 110011
数据10101100 00000
由计算结果知冗余码是0101,码字就是1100101。
********************************1 1 0 0 0 1 0 0
G(x)→1 1 0 0 1 1 ) 1 0 1 0 1 1 0 0 0 0 0 0 0←F(X)*Xr
**********************1 1 0 0 1 1 // G(x)
************************1 1 0 0 0 0 //补位
************************1 1 0 0 1 1 // G(x)
**************************0 0 0 1 1 0 0 0 0 //补位
*********************************1 1 0 0 1 1 // G(x)
***********************************0 0 0 1 1 0 0
循环冗余码:0 1 1 0 0
模2:
1-0 = 1
0-1 = 1
1-1 = 0
0-0 = 0
某循环冗余码的生成多项式为G(x)=x5+x4+x+1,则它对任意长度的信息位产生__5___位长的冗余位,//因为最高位为x5
并可检测出所有突发长度___小于等于5__位的突发错误。 //因为冗余位长度为5
若信息位为10101100,采用此生成多项式产生冗余位,加在信息位后形成的码字是__C___.在读出或接收端读到的码字中若不满足某种规律则可判断其必然有错,例如:__D___ 和___E__就是出错的码字。
C的答案见上面的计算,
D___ 和___E使用上面的方法计算出循环冗余码,循环冗余码不是0 1 1 0 0就是出错的码字
编辑于 2013-10-12
TA的回答是否帮助到你了?
能够帮助到你是知道答主们最快乐的事啦!
匿名回答于2021-03-23 17:53:22