- 1、本文档共84页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 程序设计基础 本章教学计划 理论教学(课堂教学):4学时 实验教学(上机实习):2学时 本章教学重点 1. 程序的翻译方式 2. 算法描述及数据结构 3. 程序设计基本过程 4. 程序设计基本思想 本章首先介绍程序设计语言的基本知识,包括程序设计语言的发展、分类及程序的3种翻译方式,然后介绍算法与数据结构的基本知识,程序设计的基本过程以及程序设计的基本思想。 5.1 程序设计语言概述 5.2 算法与数据结构 5.3 程序设计基本过程 5.4 程序设计的基本思想 5.1.1 程序设计语言的发展 程序是程序设计中最基本的概念,“程序”一词来自生活,通常指完成某些事务的一种既定方式和过程。程序在计算机发明之前很久就有了,例如,食谱、乐谱、工作步骤等都是程序,泛指得到一个结果需要的步骤,比如演出节目单、课程表等。 计算机程序是对计算任务的处理对象和处理规则的描述。任何以计算机为处理工具的任务都是计算任务;而处理对象指数据,如数字、文字、图像、声音等多媒体以及诸如温度、电压等物理状态;处理规则指处理动作和步骤。计算机程序由计算机语言进行描述。 5.1.1 程序设计语言的发展 在过去的几十年里,人们根据描述问题的需要而设计了数千种专用的和通用的计算机语言,据不完全统计大约有2 500种,绝大多数是高级语言,通过网址:/~nkinners/LangList/Extras/langlist.htm可以看到其列表和简介,另外: /lang/ 搜集了大约50种极具代表性的语言的故事和资料,其中,有的语言是为了编写系统软件而重在提高效率,如C语言等;有的语言是为了提高程序设计速度,面向商业应用,如COBOL等;还有些语言是用于教学,如BASIC等。这些语言中只有少部分得到了比较广泛的应用,其中影响最大、寿命最长的是C语言。 5.1.1 程序设计语言的发展 程序设计语言的发展大致经历了4代。 1) 第1代语言(大约从1946年开始) 第1代程序设计语言是由“0”和“1”这样的二进制编码指令组表示的,通常称为机器语言,是能够被计算机直接接受和执行的计算机语言。 2)第2代语言(大约从1950年早期开始) 为了让用机器语言编写的程序更易理解,程序员使用了一种类似英语缩略词且带有助记性符号的语言,例如add、sub(subtract)和load等,这种语言被称为汇编语言。这种语言与特定的机器和CPU指令集有关,而且不能被机器直接接受,必须用一种翻译器将程序中的每条语句翻译成机器语言。 5.1.1 程序设计语言的发展 3)第3代语言(大约从1950年中期开始) 第3代语言称为高级语言,因为它更接近自然语言。第3代语言是过程化的,每一条语句一般被编译成5~10条机器代码指令,编写的程序容易理解、容易维护,具有很强的进程能力和数据结构能力。这类语言在1970年以后,提出了结构化的程序控制,进一步规范了程序设计方法。 4)第4代语言(大约从20世纪80年代开始) 第4代语言(4GL)称为超高级语言,是非过程化语言。这类语言的一条语句一般被编译成30~50条机器代码,进一步提高了编码效率,并使程序更易理解、更易维护。第4代语言包括很宽范围的软件工具,如数据库查询、报表生成、数据处理、屏幕交互和定义、代码生成、高级图形以及表格处理等。 5.1.2 程序设计语言的分类 1)低级语言 低级语言主要是机器语言和汇编语言。它的特点是与特定的机器有关,功效高,但使用复杂、难记忆、难书写、编程困难、可读性差、易出差错,可移植性极差。 机器语言是表示成数码形式的机器基本指令集,或者是操作码经过符号化的基本指令集,是计算机能直接执行的指令集。 汇编语言是为了克服机器语言的缺点,用助记码和符号地址代替机器指令中的操作码和操作数,是机器语言符号化的结果。但计算机不能直接执行汇编语言程序,必须要用汇编程序翻译成机器指令后才能在计算机上执行,同时汇编语言比机器语言好理解,比其他高级语言执行效率高。 5.1.2 程序设计语言的分类 2)高级语言 高级语言的表示方法要比低级语言更接近于待解问题的表示方法,大量引入数学表示形式,其特点是与具体机器无关,易学、易用、易维护、易移植,但计算机不能直接执行,需要翻译工具。一般说来,当高级语言程序翻译成相应的低级语言程序时,一个高级语言程序单位要对应多条机器指令,相应的编译程序所产生的目标程序往往效率较低。 第一个高级程序设计语言FORTRAN (Formula Translation)——公式翻译程序设计语言,是由美国计算机科学家约翰·巴克斯(John Backus)领导的小组于1954—1957年间,在I
文档评论(0)