您所在的位置:读书频道 > 网络与维护 > 网络协议 > 7.3.2 纠错码方案

7.3.2 纠错码方案

2007-07-05 12:56 王达 电子工业出版社 字号:T | T
一键收藏,随时查看,分享好友!

本章主要介绍局域网、广域网,以及OSI各层主要功能及其工作原理这些基本的计算机网络通信技术,同时还将介绍计算机网络数据通信中常见的技术指标和参数。这些都是我们平常进行各种网络工程施工和系统设计的基础和前提。本节是纠错码方案介绍。

AD:

7.3.2  纠错码方案
在纠错码方案中,"海明码"是一种典型的纠错方案。海明码是一种可以纠正一位差错的编码。它利用在信息位为m位,增加r位冗余位,构成一个n=m+r位的码字,然后用r个监督关系式产生的r个校正因子来区分无错和在码字中的n个不同位置的一位错。它必须满足以下关系式:
2r≥n+1或2r≥m+r+1
在海明码中,还有一个基本概念,那就是"海明距离"。这个概念需要通过以下知识来理解。
通常一帧包括m个数据(报文)位和r个冗余位或者校验位。设整个长度为n(即n=m+r),则此长度为n的单元通常被称做n位码字(Codeword)。
给出任意两个码字(如10001001和10110001),可以确定它们有多少个对应位不同(如在此例中有3位不同)。为了确定有多少位不同,只需对两个码字做异或(XOR)运算,然后计算结果中"1"的个数。计算方法如下:
10001001
XOR  10110001
00111000
两个码字中不同位的个数,称为"海明距离"(Hamming Distance)。其重要性在于:假如两个码字具有海明距离d,则需要d个1位差错才能将其中一个码字转换成另一个。
一种编码的校验和纠错能力取决于它的海明距离。为检测出d比特错误,需要使用一个距离为d+1的编码方案,因为在这样的编码方案中,d个1位错误不可能将一个有效的码字转变成另一个有效的码字。当接收方看到无效的码字,它就能明白发生传输错误。同样,为了纠正d比特错误,必须使用距离为2d+1的编码方案,因为在这样的编码方案中,合法码字之间的距离足够远,即使发生了d位变化,这个发生了变化的码字仍然比其他码字都接近原始码字。作为纠错码的一个简单例子,考虑如下只有4个有效码字的代码:
0000000000、0000011111、1111100000和1111111111
以上编码的距离为5,也就是说,它能纠正双比特错。假如码字0000000111到达后,接收方知道原始码字应该为0000011111。但是,如果出现了三位错,而将0000000000变成了0000000111,则差错将不能正确地纠正。
【责任编辑:雪花 TEL:(010)68476606-8007】

回书目   上一节   下一节

分享到:

栏目热门

更多>>

  1. Linux服务器配置全程实录
  2. 揭秘--优秀PPT这样制作

热点职位

更多>>

热点专题

更多>>

读书

J2ME手机游戏设计技术与实战
本书主要介绍了在手机上开发J2ME游戏的方法,作者在介绍了J2ME游戏开发相关知识背景的基础上,以大富翁手机游戏的设计开发为例,

51CTO旗下网站

领先的IT技术网站 51CTO 中国首个CIO网站 CIOage 中国首家数字医疗网站 HC3i 51CTO学院