计算机网络-差错控制(纠错编码 海明码 纠错方法)

文章目录

  • 纠错编码-海明码
  • 海明距离
    • 1.确定校验码位数r
    • 2.确定校验码和数据的位置
    • 3.求出校验码的值
    • 4.检错并纠错
      • 纠错方法1
      • 纠错方法2
  • 小结

纠错编码-海明码

奇偶校验码:只能发现错误不能找到错误位置和纠正错误

在这里插入图片描述

海明距离

如果找到码距为1,那肯定为1了,因为是最小的
编码集的码距从1开始找,递增找

检验d位那么需要码距d+1
纠错d位那么需要码距2d+1

对于检测d位错误的能力,码距至少需要为d+1。这是因为如果码距为d+1,那么任何d位的错误都会导致编码从一个合法码字变为另一个非合法码字,而不会与任何其他合法码字相同。这样,接收方可以通过检查编码是否为一个合法的码字来检测错误。如果码距小于d+1,那么可能会存在两个合法的码字,它们之间的海明距离小于或等于d,这意味着d位错误可能将一个码字变为另一个合法的码字,从而无法检测到错误。

对于纠正d位错误的能力,码距至少需要为2d+1。这是因为为了纠正错误,接收方不仅需要能够检测到错误,还需要能够确定错误发生的具体位置。如果码距为2d+1,那么即使发生了d位错误,错误的码字与所有合法码字的最小汉明距离至少为d+1,这意味着接收方可以通过比较接收到的码字与所有合法码字的海明距离来确定最有可能的原始码字。如果码距小于2d+1,那么可能会存在多个合法码字与错误的码字海明距离相同,从而无法准确确定原始码字。
在这里插入图片描述

1.确定校验码位数r

按照公式确定r
在这里插入图片描述

2.确定校验码和数据的位置

在这里插入图片描述

3.求出校验码的值

通常采用偶校验,也可以采用奇校验
在这里插入图片描述

4.检错并纠错

纠错方法1

在这里插入图片描述
三个大圈是分别对应1,2,4号校验码,重叠部分为各自的总和。正确的部分2号校验码2,3,6,7那么没有问题,错误的部分1号和4号校验码的公共部分5,7肯定是有问题的,而7是没有问题(2号校验码2,3,6,7那么没有问题)所以5有问题
在这里插入图片描述

纠错方法2

通过两两异或得错误位置的二进制编码,再求该编码的十进制数即可得到错误位置
在这里插入图片描述

小结

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/255885.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

掌握高效秘诀:揭秘从容应对多任务管理的终极妙招

多任务管理是非常重要的技能,然而如何平衡任务和时间仍然是许多人的挑战。进行多任务管理一般可以从设定目标和清单、排除无关任务、执行任务的时间块化、利用团队合作、学会任务切换几个方面出发,在本文中我们将详细介绍如何利用有效的多任务管理技巧来…

Guava:Cache强大的本地缓存框架

Guava Cache是一款非常优秀的本地缓存框架。 一、 经典配置 Guava Cache 的数据结构跟 JDK1.7 的 ConcurrentHashMap 类似,提供了基于时间、容量、引用三种回收策略,以及自动加载、访问统计等功能。 基本的配置 Testpublic void testLoadingCache() th…

【linux系统体验】-archlinux简易折腾

archlinux 一、系统安装二、系统配置及美化2.1 中文输入法2.2 安装virtualbox增强工具2.3 终端美化2.4 桌面面板美化 三、常用命令 一、系统安装 安装步骤人们已经总结了很多很全: Arch Linux图文安装教程 大体步骤: 磁盘分区安装 Linux内核配置系统(…

WordPress后台编辑个人资料页面直接修改用户名插件Change Username

前面跟大家介绍了『如何修改WordPress后台管理员用户名?推荐2种简单方法』一文,但是对于新站长或者有很多用户的站长来说,操作有点复杂,所以今天向大家推荐一款可以直接在WordPress后台编辑个人(用户)资料页…

MySQL数据库-索引概念及其数据结构、覆盖索引与回表查询关联、超大分页解决思路

索引是帮助mysql高效获取数据的数据结构,主要用来提高检索的效率,降低数据库的IO成本(输入输出成本(Input-Output Cost)),同时通过索引对数据进行排序也能降低数据排序的成本,降低了CPU的消耗。 Mysql的默认存储引擎InnoDB,InnoDB采用的B树的…

文献阅读:Mamba: Linear-Time Sequence Modeling with Selective State Spaces

文献阅读:Mamba: Linear-Time Sequence Modeling with Selective State Spaces 1. 文章简介2. 方法介绍 1. State Space Models2. Selective State Space Models 3. 实验考察 & 结论 1. 简单问题上的验证2. 实际场景效果 1. 语言模型2. DNA模型3. 语音模型 3. 细…

CentOS 8 安装配置 Hadoop3.3.6 伪分布式安装方式(适用于开发和调试)

1.配置服务器ssh免密登录,否则后面启动会报错:尝试通过SSH连接到主机出现认证错误的提示 配置服务器ssh免密登录: 1.生成SSH密钥对(如果尚未生成): 执行下面的命令生成密钥对,一直回车即可 ssh…

jvm问题自查思路

本文聊一下最近处理了一些jvm的问题上,将这个排查和学习过程分享一下,看了很多资料,最终都会落地到几个工具的使用,本文主要是从文档学习、工具学习和第三方技术验证来打开认知和实践,希望有用。 一、文档 不仅知道了…

以用户为中心,酷开科技荣获“消费者服务之星”

在企业顺应消费升级的道路中,企业自身不仅要着力强化对于消费者服务意识的提升,并且要树立诚信自律的行业示范带头作用,助力消费环境稳中向好,不断满足人民群众对美好生活的期待。企业的发展需要消费者的认可,酷开科技…

创建你的第一个Vue项目(小白专享版本)

💗💗💗欢迎来到我的博客,你将找到有关如何使用技术解决问题的文章,也会找到某个技术的学习路线。无论你是何种职业,我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章,也欢…

【EAI 016】VIMA: General Robot Manipulation with Multimodal Prompts

论文标题:VIMA: General Robot Manipulation with Multimodal Prompts 论文作者:Yunfan Jiang, Agrim Gupta, Zichen Zhang, Guanzhi Wang, Yongqiang Dou, Yanjun Chen, Li Fei-Fei, Anima Anandkumar, Yuke Zhu, Linxi Fan 作者单位:Stanfo…

【自定义序列化器】⭐️通过继承JsonSerializer和实现WebMvcConfigurer类完成自定义序列化

目录 前言 解决方案 具体实现 一、自定义序列化器 二、两种方式指定作用域 1、注解 JsonSerialize() 2、实现自定义全局配置 WebMvcConfigurer 三、拓展 WebMvcConfigurer接口 章末 前言 小伙伴们大家好,上次做了自定义对象属性拷贝&#x…

Javaweb之SpringBootWeb案例之事务进阶的详细解析

1.3 事务进阶 前面我们通过spring事务管理注解Transactional已经控制了业务层方法的事务。接下来我们要来详细的介绍一下Transactional事务管理注解的使用细节。我们这里主要介绍Transactional注解当中的两个常见的属性: 异常回滚的属性:rollbackFor 事…

华为第二批难题五:AI技术提升六面体网格生成自动化问题

有CAE开发商问及OCCT几何内核的网格方面的技术问题。其实,OCCT几何内核的现有网格生成能力比较弱。 HybridOctree_Hex的源代码,还没有仔细去学习。 “HybridOctree_Hex”的开发者说:六面体网格主要是用在数值模拟领域的,比如汽车…

依赖注入的艺术:编写可扩展 JavaScript 代码的秘密

1. 依赖注入 在 JavaScript 中,依赖注入(Dependency Injection,简称 DI)是一种软件设计模式,通过这种模式,可以减少代码模块之间的紧耦合。依赖注入允许开发者将模块的依赖关系从模块的内部转移到外部&…

VMWare虚拟机安装

VMWare虚拟机安装 0.Linux运行平台介绍1. VMWare 虚拟软件安装检查虚拟网卡是否安装 创建VMWare虚拟机对创建虚拟机的内容进行设置挂在要安装的CentOS的ISO文件 0.Linux运行平台介绍 Linux的运行平台一共有两种,其中包括物理机平台和虚拟机平台,在学习阶段当中建议使用虚拟机 …

S32 Design Studio PE工具配置GPIO

首先我们来讲最简单的GPIO配置 代码生成 按照下图步骤就能配置一个基本的GPIO口,在组件里面选择pin_mux,选中就能配置使能和方向,no pin routed就是没有配置的。GPIO口分ABCDE组,每组从0到最大的序号。 然后在functional prope…

Java 基于微信小程序的电子商城购物系统

博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝12W、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇…

【AIGC风格prompt深度指南】掌握绘画风格关键词,实现艺术模仿的革新实践

[小提琴家]ASCII风格,点,爆炸,光,射线,计算机代码 由冰和水制成的和平标志]非常详细,寒冷,冰冻,大气,照片逼真,流动,16K 胡迪尼模拟火和水&#x…

websocket简易基操

一、概述 1.1 简介 WebSocket是HTML5下一种新的协议(websocket协议本质上是一个基于tcp的协议),它实现了浏览器与服务器全双工通信,能更好的节省服务器资源和带宽并达到实时通讯的目的,Websocket是一个持久化的协议。…