循环余检验的原理在数据链路层传送的顿中,广泛使用了循环穴余检验CRC的检错技术■在发送端,先把数据划分为组。假定每组k个比特。(现在1假设待传送的一组数据M=101001k=6)。我们在M的后面再添加供差错检测用的n位亢余码一起发送
循环冗余检验的原理 ◼ 在数据链路层传送的帧中,广泛使用了循 环冗余检验 CRC 的检错技术。 ◼ 在发送端,先把数据划分为组。假定每组 k 个比特。 ◼ 假设待传送的一组数据 M = 101001(现在 k = 6)。我们在 M 的后面再添加供差错检 测用的 n 位冗余码一起发送
余码的计算1用二进制的模2运算进行2n乘M的运算这相当于在M后面添加n个0。■得到的(k+n)位的数除以事先选定好的长度为(n+1位的除数P,得出商是Q而余数是R,余数R比除数P少1位,即R是n位
冗余码的计算 ◼ 用二进制的模2运算进行 2 n 乘 M 的运算, 这相当于在 M 后面添加 n 个 0。 ◼ 得到的 (k + n) 位的数除以事先选定好的 长度为 (n + 1) 位的除数 P,得出商是 Q 而余数是 R,余数 R 比除数 P 少1 位, 即 R 是 n 位
几余码的计算举例现在k=6.M=101001。设n=3.除数P=1101,被除数是2nM=101001000模2运算的结果是:商Q=110101,余数R=001。把余数R作为余码添加在数据M的后面发送出去。发送的数据是:2nM+R即:101001001,共(k+n位
冗余码的计算举例 ◼ 现在 k = 6, M = 101001。 ◼ 设 n = 3, 除数 P = 1101, ◼ 被除数是 2 nM = 101001000。 ◼ 模 2 运算的结果是:商 Q = 110101, 余数 R = 001。 ◼ 把余数 R 作为冗余码添加在数据 M 的后面发 送出去。发送的数据是:2 nM + R 即:101001001,共 (k + n) 位
循环穴余检验的原理说明110101←Q(商)P(除数)—→1101101001000←2nM(被除数)11011110110101110000111011010110000011001101001←一R(余数),作为FCS
110101←Q (商) P (除数) →1101 101001000←2 nM (被除数) 1101 1110 1101 0111 0000 1110 1101 0110 0000 1100 1101 001 ← R (余数),作为FCS 循环冗余检验的原理说明
顿检验序列FCS在数据后面添加上的几余码称为顿检验序列FCS(FrameCheckSequence)循环穴余检验CRC和顿检验序列FCS并不等同。■CRC是一种常用的检错方法,而FCS是添加在数据后面的穴余码FCS可以用CRC这种方法得出,但CRC并非用来获得FCS的唯一方法
帧检验序列 FCS ◼ 在数据后面添加上的冗余码称为帧检验 序列 FCS (Frame Check Sequence)。 ◼ 循环冗余检验 CRC 和帧检验序列 FCS 并不等同。 ◼ CRC 是一种常用的检错方法,而 FCS 是添 加在数据后面的冗余码。 ◼ FCS 可以用 CRC 这种方法得出,但 CRC 并非用来获得 FCS 的唯一方法