假设数据为字符串C=0123456,以8位为单位分段,求出校验和,如果字符0在传输过程变为字符7?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了假设数据为字符串C=0123456,以8位为单位分段,求出校验和,如果字符0在传输过程变为字符7?相关的知识,希望对你有一定的参考价值。
假设数据为字符串C=0123456,以8位为单位分段,求出校验和,如果字符0在传输过程变为字符7,给出接收端的检错过程。
参考技术A 字符串校验和的一种实现方法是:(1)把校验和字段设置为0。 (2)把需要校验的数据看成以8位为单位的数字组成,依次进行求和,得到的和二进制求反码,再加上1,最终得到校验和。 (3)把得到的结果存入校验和字段中。
对于您给出的数据C=0123456,以8位为单位分段,我们可以将其转换为ASCII码表示:
C=30 31 32 33 34 35 36
按照上述方法计算校验和:
(1)设置校验和字段为0:00 (2)依次求和:30+31+32+33+34+35+36=171 求反码:171的二进制表示为10101011,反码为01010100 加1:01010100 + 1 = 01010101 (3)存入结果:校验和字段为01010101
如果字符0在传输过程变为字符7,则接收端收到的数据为:
C=37 31 32 33 34 35 36
按照同样的方法计算校验和:
(1)设置校验和字段为0:00 (2)依次求和:37+31+32+33+34+35+36=178 求反码:178的二进制表示为10110010,反码为01001101 加1:01001101 + 1 = 01001110 (3)存入结果:校验和字段为01001110
c_cpp 以位为单位显示十六进制;与掩码一起使用按位AND。
以上是关于假设数据为字符串C=0123456,以8位为单位分段,求出校验和,如果字符0在传输过程变为字符7?的主要内容,如果未能解决你的问题,请参考以下文章