- 1、本文档共188页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章计算机软件开发
本章学习目标
本章介绍了程序设计的一些基本术语和原理。通过本章的学习,读者应该掌握计算机的程序设计基础、程序语言的数据类型、基本控制结构,算法与数据结构、程序设计语言与翻译系统、知道软件工程方法。本章重点是结构化程序设计,理解面向对象及其应用场合;理解软件开发和软件工程的概念。
内容提要
5.1 程序设计的基本概念
5.2 C语言
5.3算法与数据结构
5.4 面向对象程序设计的基本概念
5.5 软件工程方法
5.1 程序设计的基本概念
5.1.1 程序设计语言概述
5.1.2 高级语言与翻译系统
5.1 程序设计基本概念
人们把需要计算机做的工作写成一定形式的指令,并把它们存储在计算机内存中,让计算机按顺序自动执行。这种可以连续执行的计算机指令的集合被称为“程序”。计算机程序设计人员可以选择各种各样的程序设计语言或程序开发工具来开发软件。程序实际上是用计算机语言描述的对某一问题的解决步骤,而编制程序就是为计算机安排指令序列。
5.1.1 程序设计语言概述
迄今为止,程序设计语言有超过几百种之多,可以将其分为五大类:机器语言、汇编语言、第三代语言 (Third Generation Language, 3GL)、第四代语言(4GL)和第五代语言(5GL)。
计算机语言
机器语言(由0和1构成的代码)
汇编语言(英文缩写的助记符)
高级语言
直接对硬件操作
1、采用比较接近人们习惯的自然语言
2、具有很大的通用性(即不受具体机器指令的约束)
3、 面向算法编写程序
1. 机器语言
每个计算机系统都有一套自己的指令系统,指令系统中的每一条指令就称为机器指令,而机器指令的集合就称为机器语言。机器语言由计算机能识别和直接执行的二进制代码组成。
机器语言的优点是可以被计算机直接理解和执行,执行速度快,且占用内存少。缺点是面向机器,通用性差。它要求程序设计人员熟练掌握计算机的全部机器指令,且要求对计算机硬件结构有很好的了解。用机器语言编写的程序可读性很差,不易于调试和维护。
2. 汇编语言
汇编语言是第二代程序设计语言。在汇编语言中,采用了有助于记忆的符号(称为指令助记符)来表示机器指令中的操作码和地址码。指令助记符是一些有意义的英文单词的缩写和符号。例如,用ADD表示加法(addition)、用SUB表示减法(subtract)、用MOV表示数据的传送(move)、用JMP表示程序的跳转(jump)等等。而操作数可以直接用十进制数书写,地址码可以用寄存器名、存储单元的符号地址等表示。
用汇编语言编写的程序称为汇编语言源程序。因为计算机只能识别用二进制代码表示的机器指令,而不能识别汇编语言源程序中的指令助记符。因此必须将由汇编语言编写的源程序翻译成由机器语言组成的目标程序,这个过程叫做汇编。汇编的工作过程如图5.1所示。
与机器语言相比,汇编语言有许多优点,程序设计人员可以用汇编语言写出语句少、质量高、执行速度快的程序。但是,汇编语言仍是一种面向机器的语言,通用性差。它要求程序设计人员对计算机的硬件结构如计算机的指令系统、CPU中寄存器的结构及存储器单元的寻址方式等等有较详细的了解,并且要求程序设计人员具有较高的编程技巧。
机器语言和汇编语言都属于低级语言。
图5.1 汇编程序的工作过程
3. 高级语言
高级语言实际上包括了第三代、第四代、第五代语言,这里主要是指第三代语言。
由于机器语言和汇编语言的不足,带来了五十年代后期和六十年代计算机高级语言的产生和发展。高级语言是一种接近人的自然语言和数学语言的程序设计语言。用高级语言编写的程序表达直观,可读性好,与具体机器无关,便于移植,通用性好。高级语言的诞生是计算机技术的一次重大突破。语言的编译需要词法和语法理论的支持。形式语言与自动机理论是高级语言语法分析的理论基础。
高级语言是按照一定的“语法规则”,由表达各种不同意义的“关键字”和“表达式”组成。例如,用PRINT表示显示,用数学运算符“+”表示加号,用“*”表示乘号等。这些用英语单词表示的关键字和数学符号简化了程序设计人员开发应用程序的过程。高级语言是面向算法过程的语言。即不但要告诉计算机“做什么”,还要告诉计算机“怎么做”。用高级语言编程时,程序设计人员可以应用自顶向下的程序设计方法及结构化的程序控制结构(顺序结构、选择结构、循环结构)来开发程序。
4. 第四代语言(4GL)
第四代语言是一种非过程化的语言。只需要说明所要完成的加工和条件,给出输入数据并指明输出形式,就能得到所需结果。第四代语言简单易学,
文档评论(0)