循环码(7,4)(3)

2019-08-17 12:55

综上所述循环码的译码可按以下三个步骤进行: 1.接收到的y(x)计算伴随式式s(x);

?2.根据伴随式s(x)找到对应的估值错误图样e(x);

????3.计算c=y(x)+e(x),得到估值码字c(x)。若c(x)=c(x),则译码正确,否则,若?c(x)≠c(x),则译码错误。 由上述方法可计算出(7,4)码译码码表:

图3-5 (7,4)码译码表

序号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 输入序列 0000000及其1位出错码组 0001101及其1位出错码组 0010111及其1位出错码组 0011010及其1位出错码组 0100011及其1位出错码组 0101110及其1位出错码组 0110100及其1位出错码组 0111001及其1位出错码组 1000110及其1位出错码组 1001011及其1位出错码组 1010001及其1位出错码组 1011100及其1位出错码组 1100101及其1位出错码组 1101000及其1位出错码组 1110010及其1位出错码组 1111111及其1位出错码组 输出序列 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

开始 在text1输入序列 点击译码触发单击事件 计算text1序列长度len N

序列长度len对7求余 Len被7整除? Y 初始化循环变量j 读入从j开始的7位序列 读入序列后查表求对应的4位码,累加到输出 N

j+7 j=len? Y 输出到text2 结束 图3-6查表法译码流程图

该程序以j为循环变量反复从输入序列中读取7位,然后根据码码表去掉后3位,再累加到输出序列。当输入序列全部读取时即j等于输入序列长度len时,显示输出序列。

当输入序列不能被7整除时,程序不对序列做任何处理,也没有输出序列。这时可重新输入序列,保证其能被7整除。

图3-7输入“0011110”时译码结果

图3-8输入“10100100011110”译码结果

当输入序列位“0011110”和“10100100011110”时的结果如图3-7和图3-8所示,经查表验证结果正确。说明此程序可以正确将输入序列分段并去除后三位,最后显示输出序列。程序符合设计要求。

图3-9 “0000000”a0位出错时输出结果

图3-10 “0011110”a3位出错时输出结果

当输入序列位“0000000”a0位出错和“0011110”a3位出错时的结果如图3-9和图3-10所示,经查表验证结果正确。说明此程序可以正确纠正一位错码,并显示输出序列。程序符合设计要求。

图3-11 “0000000”a2,a3位出错时输出结果

当输入序列位“0000000” a2,a3位出错时的结果如图3-11所示,“0000000” a2,a3位出错会被认为是“0001101”a0位出错进行译码,所以该程序不能纠正和检测出两位错码。该结果验证了式(2-5)的正确性。


循环码(7,4)(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:建筑法规学习心得

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: