3170103456-应承峻-作业三1
【数据链路协议中的字符编码】 在数据链路层的通信中,字符编码用于表示数据的二进制形式。题目中提到了几种特定的编码: A: 01000111 B: 11100011 FLAG: 01111110 ESC: 11100000 这些编码在数据帧传输中具有特定的用途: - FLAG: 通常用于标记数据帧的开始和结束,01111110 的这种连续高电平序列很容易被识别。 - ESC: 逃逸符(Escape Sequence),用于在数据中出现与帧界定符相同的序列时进行转义,避免混淆。 【帧封装方法】 1. 字节计数法:在数据帧前后添加字节计数值,表示数据部分的长度。例如,对于数据ABESCFLAG,会先发送字节计数(这里是四个字符),然后发送ABESCFLAG,最后再发送一个FLAG作为帧结束标志。因此,对应的比特序列是:00000101 01000111 11100011 11100000 11100000 01111110。 2. 标志字节与字节填充:在数据前后添加FLAG,如果数据中出现FLAG序列,则用ESC进行转义,然后跟上原始的FLAG。例如,ABESCFLAG会被转换为:01111110 01000111 11100011 11100000 11100000 11100000 01111110 01111110。 3. 起始和结束标志字节与位填充:这种方法会在数据前后添加FLAG,但当数据中出现连续的五个1(对应于FLAG的一部分)时,插入一个0来防止误判。例如,ABESCFLAG转换为:01111110 01000111 110100011 111000000 011111010 01111110。 【汉明码】 汉明码是一种有效的错误检测和纠正方法。根据题目描述,我们需要证明汉明码中的校验位数量(r)几乎达到了最小界限,即公式(3-1)所描述的不等式(m + r + 1) ≤ 2^r。通过枚举r的值,我们可以发现当r小于4时不等式不成立,而当r等于或大于4时,不等式恒成立。具体证明涉及求导和单调性分析,最终得出r = 4是不等式的下界,这意味着至少需要4位校验码。 【汉明码应用】 1. 1位错误修正:对于一个12位的消息010100111111,我们根据汉明1位错误修正系统从右到左编号并插入校验位。在这种情况下,我们需要r = 5位校验码,形成一个(17,5)的汉明码。计算每个校验位后,我们得到如下编码: No. 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 val 0 P5 1 0 1 0 0 1 1 P4 1 1 1 P3 1 P2 P1 2. 2位错误检测:尽管汉明码只能修正1位错误,但它可以检测到更复杂的错误。例如,如果3个相邻的数据位发生错误,但不包括校验位,那么这种3位错误可能会未被检测到。在这种情况下,算法失败的原因是汉明码的最小距离为3,它只能区分出不同位置的3个不同位,而不能识别3个连续位的错误,因为这样的组合看起来像是单个位的错误。 总结来说,数据链路协议中的字符编码、帧封装方法以及汉明码的原理和应用是计算机网络中重要的知识点,它们涉及到数据的可靠传输和错误控制。汉明码通过巧妙地插入校验位,能够在一定程度上确保数据的准确无误,是通信领域不可或缺的工具。
- 粉丝: 19
- 资源: 290
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 机器人大纲资料.txt
- 安装包大纲资料.txt
- 后端开发大纲资料.txt
- 简单的银行管理系统:实现银行账户的创建、存取款、转账等基本功能,可以考虑加入多种账户类型和利率计算
- 实现学生的基本信息管理,包括增删改查学生信息、成绩管理等功能
- 用MATLAB生成一个傅立叶变换的图形.zip
- 前端开发大纲资料.txt
- 设计一个酒店预订系统数据库,包括房间信息、客户预订、支付记录等信息 可以涉及房间管理、订单确认、支付流程等操作
- 设计一个物流管理系统数据库,包括订单、运输路线、仓库管理等信息 可以涉及订单跟踪、库存管理、运输计划等功能
- HTML5小游戏【火柴人大逃亡-425款经典优秀H5小游戏合集】游戏源码分享下载 - hcrdtw.zip
评论0