欢迎来到天天文库
浏览记录
ID:21012937
大小:1.40 MB
页数:33页
时间:2018-10-18
《(7,4)汉明码编译码软件设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、*******************实践教学*******************兰州理工大学计算机与通信学院2012年秋季学期计算机通信课程设计题目:(7,4)汉明码编译码软件设计专业班级:姓名:学号:指导教师:成绩:摘要汉明码是一种能自动检错并纠正一位错码的线性纠错码,用于信道编码与译码中,高通信系统抗干扰的能力。本次课设主要是(7,4)汉明码的编译码软件设计,该软件可以对输入的多个四位信息码进行编码,对于接收的多个七位信息码可以进行译码,从而译出四位信息位.当接收到的信息码有一位错误时,可以纠正这一位错码,进
2、而译出正确的信息码组,整个程序使用C语言编写.关键词:汉明码、编码、译码、检错、纠错目录一、C语言简介11.1什么是C语言11.2C语言的特点11.3运行C程序的步骤与方法2二、汉明码编码42.1汉明码编码原理42.2监督矩阵62.3生成矩阵7三、汉明码纠错检错93.1汉明距离93.2汉明码纠错原理9四、汉明码编译码的实现过程104.1编码过程104.2译码过程10五、软件设计及测试分析125.1程序流程图125.1.2编码程序流程图125.1.3译码程序流程图135.2软件运行分析155.2.1主程序运行分析155
3、.2.2编码运行分析175.2.3译码运行分析185.3软件分析19总结20参考文献21附录22一、C语言简介1.1什么是C语言C语言是一种计算机程序设计语言。它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出。1978后,C语言已先后被移植到大、中、小及微型机上。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适
4、于编写系统软件,三维,二维图形和动画。具体应用比如单片机以及嵌入式系统开发。1.2C语言的特点一种语言之所以能存在和发展,并具有较强的生命力,总是有不同于其他语言的特点。主要的优缺点介绍如下。优点l简洁紧凑、灵活方便。C语言一共只有32个关键字,9种控制语句,程序书写形式自由,区分大小写。把高级语言的基本结构和语句与低级语言的实用性结合起来。C语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。l运算符丰富。C语言的运算符包含的范围很广泛,共有34种运算符。C语言把括号、赋值。强制类型转
5、换等都作为运算符处理。从而使C语言的运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。l数据类型丰富。C语言的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。能用来实现各种复杂的数据结构运算。并引入了指针概念,使程序效率更高。另外C语言具有强大的图形功能,支持多种显示器和驱动器。且计算功能、逻辑判断功能强大。lC是结构式语言。结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,
6、便于使用、维护以及调试。C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。l语法限制不太严格,程序设计自由度大。30虽然C语言也是强类型语言,但它的语法比较灵活,允许程序编写者有较大的自由度。l允许直接访问物理地址,对硬件进行操作。由于C语言允许直接访问物理地址,可以直接对硬件进行操作,因此它既具有高级语言的功能,又具有低级语言的许多功能,能够像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元,可用来写系统软件。l生成目标代码质量高
7、,程序执行效率高。一般只比汇编程序生成的目标代码效率低10へ20%。l适用范围大,可移植性好。C语言有一个突出的优点就是适合于多种操作系统,如DOS、UNIX、windows98.windowsNT;也适用于多种机型。C语言具有强大的绘图能力,可移植性好,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画,它也是数值计算的高级语言。缺点lC语言的缺点主要表现在数据的封装性上,这一点使得C在数据的安全性上有很大缺陷,这也是C和C++的一大区别。lC语言的语法限制不太严格,对变量的类型约束不严格,影响程
8、序的安全性,对数组下标越界不作检查等。从应用的角度,C语言比其他高级语言较难掌握。1.3运行C程序的步骤与方法为了使计算机能按照人的意志进行工作,必须根据问题的要求,编写出相应的程序。为了使计算机能执行高级语言源程序,必须先用一种称为“编译程序”的软件,把源程序翻译成二进制形式的“目标程序”,然后再将该目标程序与系统的函数库以及其他目标程序连接
此文档下载收益归作者所有