差错检验与校正教程
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在发送方的数据中增加 一些用于检查差错的附
在待发送数据中增加足够 多的附加位,从而使得接
加位。用于有反馈的传
输机制中。 实现方法简单,速度快。
收方能够准确地检测到差
错,并且可以自动地纠正 差错。用于无反馈信息的 传输机制中,如汉明码。
3、奇偶校验
奇偶校验(Parity Check)是一种校验代码传输正确性的方法,是一种最简单的检错方法。根据 被传输的一组二进制代码的数位中“1”的个数是奇数或偶数来进行校验。采用何种校验是事 先规定好的。采用奇数的称为奇校验,反之,称为偶校验。通常专门设置一个奇偶校验位,用
第2章 数据通信基础
2.4差错检验与校正
差错检验与校正
计算机网络的基本要求是高速而且无差错的传输数据信息,而通
信系统主要由一个个物理实体组成。一个物理实体从制造、装配等
都无法达到理想的理论值,而且通信系统在运作中,也会受到周围 环境的影响。因此数据在传输数据过程中发生差错是不可避免的, 解决这个问题的技术称为差错控制技术 ,即把差错控制在允许的范 围内。通常差错控制技术包括两个主要内容:
采用奇偶校验时,若其中2位同时发生错误,则
会发生没有检测错误的情况。所以奇偶检验虽然简
单,但并不是一种安全的差错控制方法。一般,在
低速传输时,出错概率较低,效果还可以令人满意。
而当传输数据速率较高或噪声持续时间较长时,由
于可能发生多位出错,差错检验的结果很可能是错
误的。
ASCII编码
ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的 一套电脑编码系统,它是现今最通用的单字节编码系统。 在计算机中,所有的数据在存储和运算时都要使用二进 制数表示(因为计算机用高电平和低电平分别表示 1和0), 例如,像a、b、c、d这样的52个字母(包括大写)、以及 0 、1 等数字还有一些常用的符号(例如*、# 、@等)在计 算机中存储时都要使用二进制数来表示,而具体用哪些二 进制数字表示哪个符号,当然每个人都可以约定自己的一 套(这就叫编码),而大家如果要想互相通信而不造成混 乱,那么大家就必须使用相同的编码规则,于是美国有关 的标准化组织就出台了ASCII编码,统一规定了上述常用符 号用哪些二进制数来表示。
一般来说,传输中的差错都是由噪声引起的。噪声有 两大类:随机热噪声和冲击噪声。 随机差错:随机热噪声 信道所固有的,持续存在的,随机错通常 较少。
突发差错:冲击噪声
由于外界特定的短暂原因所造成的冲击噪声,冲击
噪声的幅度可以相当大 ,它是传输中产生差错的重要原
因。
2、两种差错控制技术
检错法
纠错 法
又称多项式码,是通过多项式除法检测差错的方法。这种
编码对随机差错和突发差错均能以较低的冗余度进行严格
的检查,有很强的检错能力。
CRC码称为多项式码。这是因为任何一个由二进制
数位串组成的代码都可以和一个只含有0和1两个系数 的多项式建立一一对应的关系。 x的最高幂次对应二进制数的最高位,以下各位对 应多项式的各幂次,有此幂次项对应1,无此幂次项对 应0。可以看出:x的最高幂次为R,转换成对应的二进 制数有R+1位。(因为从x的0次幂算起)
-
· /
=
> ﹖
M
N O
]
↑ ←mn o来自}~ DEL4、循环冗余码校验
奇偶校验作为一种检验码虽然简单,但是漏检率太高。 目前,在计算机网络和数据通信中用得最广泛的检错码是 一种漏检率低得多也便于实现的循环冗余码CRC(Cyclic
Redundancy Code )。 CRC 是一种较复杂的校验方法,
0111
1000 1001 1010 1011 1100
BEL
BS HT LF VT FF
ETB
CAN EM SUB ESC FS
'
﹙ ﹚ ﹡ + ,
7
8 9 : ﹔ <
G
H I J K L
W
X Y Z [ \
g
h i j k l
w
x y z ﹛ |
1101
1110 1111
CR
SO SI
GS
RS HS
它使这组代码中“1”的个数为奇数或偶数。若用奇校验,则当接收端收到这组代码时,校验
“1”的个数是否为奇数,从而确定传输代码的正确性。
例如,在传输ASCII字符时,每个ASCII字符 用7为表示,最后加上一个奇偶校验位总共成 为8位。对于奇校验来说,最后加上的奇偶位 校验使整个8位中1个数为奇数。 如发送1110001,采用奇校验时,奇偶位校 验为1,即传输11100011。接收器检查接收到 的数据的1的个数为奇数,就认为 无错误发 生。若采用偶校验时,发送的二进制码是?
已知字符 T的ASCII 码值的十进制表示为84,如果 将最高位设置为奇校验位,则字符M的ASCII码值 设置奇校验位后,它的二进制表示为( ) A.01001101 C.01101011 B.11001101 D.10111101
解答:M的ASCII码77,二进制表示为 01001101 ,里面有 4 个 1 所以奇偶校验取值为 1 , 设置于最高位后就是B了。
d3 d2 d1d0位 0000 0001 0010 0011 0100 0101 0110
0 d6 d5d4位 000 NUL SOH STX ETX EOT ENQ ACK 001 DEL DC1 DC2 DC3 DC4 NAK SYN 010 SP ! ″ # ﹩ % ﹠ 011 0 1 2 3 4 5 6 100 @ A B C D E F 101 P Q R S T U V 110 ` a b c d e f 111 p q r s t u v
1、差错出现的可能原因
数据传输中出现差错有多种原因,一般分为内部因素 和外部因素。 内部因素有噪声脉冲、脉动噪声、衰减、延迟、失真 等。机器设备本身的不理想、技术不成熟 外部因素有电磁干扰、太阳噪声、工业噪声等。对信 号影响较大。 噪声脉冲:通信中出现的离散型噪声的统称。它由时 间上无规则出现的突发性干扰组成。
ASCII 码使用指定的7 位或8 位二进制数组 合来表示128 或256 种可能的字符。标准ASCII 码也叫基础ASCII 码,使用 7 位二进制数来表示 所有的大写和小写字母,数字0 到9、标点符号以 及在美式英语中使用的特殊控制字符。例如, A 的7位ASCII编码为1000001。下图为7位ASCII代 码表。