用C语言实现线性分组码的编译码.doc

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用C语言实现线性分组码的编译码

******************* 实践教学 ******************* 2011年春季学期 《计算机通信》 课程设计 题 目: 线性分组码的编译码软件设计 专业班级: 姓 名: 学 号: 指导教师: 成 绩: 摘 要 本次课程设计是线性分组码的编译码软件设计,该软件可以对输入的多个四位信息码进行Hamming编码,对于接收的多个七位信息码可以进行译码,从而译出四位信息位。当接收的信息码中有一位错误时,可以纠正这一位错码,进而译出正确的信息码组,整个程序是用C语言编写的。 关键词:线性分组码;编码;译码;纠错;检错 目 录 前言 1 一、C语言简介 2 1.1 什么是C语言 2 1.2 C语言的特点 2 1.3 运行C程序的步骤与方法 3 二、设计目标 5 三、线性分组码的基本原理 6 3.1 线性分组码的编码 6 3.1.1 监督矩阵 6 3.1.2 生成矩阵 8 3.2 线性分组码的译码 9 3.2.1 码的距离及纠检错能力 9 3.2.2 伴随式与译码 10 四、推导过程 11 4.1 编码过程 11 4.2 译码过程 11 五、程序设计及仿真分析 13 5.1 程序流程图 13 5.1.1 主程序流程图 13 5.1.2 编码程序流程图 14 5.1.3 译码程序流程图 15 5.2 程序运行分析 16 5.2.1 主程序运行分析 16 5.2.2 编码运行分析 19 5.2.3 译码运行分析 20 5.3 软件分析 21 设计总结 23 致谢 23 参考文献 24 附录 25 前言 数字通信系统是以数字信号的形式来传递信息的一种通信系统。它所包括的范围很广,从现在的市话通信系统、数字蜂窝系统、计算机通信系统到雷达系统、遥控测控系统、计算机运算和存储系统等都是数字通信系统。所有数字通信系统都可归结为如图1所示的模型。 图1 数字通信系统模型 图1中,信源编码器把信源发出的消息如语言、图像、文字等转换成为二进制(也可以转换成为多进制)形式的信息序列,并且为了传输有效,还去掉一些与传输信息无关的冗余。有时为了必威体育官网网址,信源编码器后还可以接上加密器。为了抗击传输过程中的各种干扰,往往要认为地增加一些冗余,使系统具有自动检错和纠错能力,这种功能由图中的信道编码器即纠错编码器完成。调制器的功能是把纠错编码器送出的信息序列通过调制器变换成适合于信道传输的信号。数字信号在信道传输过程中,总会遇到各种干扰而使信号失真,这种失真信号传输到接收端的解调器进行解调,变成二进制信息(多进制)序列。由于信道干扰的影响,该信息序列中可能有错误,经过信道译码器即纠错码译码器,对其中的错误进行纠正,再通过信源译码器(及解密器)恢复成原来的消息送给用户。 从上可知,信道编码是用来控制有扰信道对信息序列所产生的差错,故也称为差错控制编码。这种方法是提高数字通信可靠性的有效方法,也是目前较为流行的差错控制编码技术。 分组码是一组固定长度的码组,可表示为(n , k),通常它用于前向纠错。在分组码中,监督位被加到信息位之后,形成新的码。在编码时,k个信息位被编为n位码组长度,而n-k个监督位的作用就是实现检错与纠错。这种码的编码效率比较高,因此得到了广泛的应用。 一、C语言简介 1.1 什么是C语言 C语言是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出。1978后,C语言已先后被移植到大、中、小及微型机上。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画。具体应用比如单片机以及嵌入式系统开发。 1.2 C语言的特点 一种语言之所以能存在和发展,并具有较强的生命力,总是有不同于其他语言的特点。主要的优缺点介绍如下。 优点 简洁紧凑、灵活方便。C语言一共只有32个关键字,9种控制语句,程序书写形式自由,区分大小写。把高级语言的基本结构和语句与低级语言的实用性结合起来。C语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。 运算符丰富。C语言的运算符包含的范围很广泛,共有34种运算符。C语言把括号、赋值。强制类型转换等都作为运算符处理。从而使C语言的运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。 数据类型丰富。C语言的数据类型有:整型、实型、

文档评论(0)

pangzilva + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档