计算机科学概论 第6章 程序设计语言.ppt
《计算机科学概论 第6章 程序设计语言.ppt》由会员分享,可在线阅读,更多相关《计算机科学概论 第6章 程序设计语言.ppt(48页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第6 6章章 程序设计语言程序设计语言计算机科学概论目标目标了解计算机语言的发展;了解计算机语言的发展;理解机器语言、汇编语言、高级语言的概念理解机器语言、汇编语言、高级语言的概念理解机器语言与汇编语言、高级语言的差异与各理解机器语言与汇编语言、高级语言的差异与各自具备的特点与优势自具备的特点与优势理解虚拟机的概念理解虚拟机的概念了解高级语言的发展,列出几种高级语言了解高级语言的发展,列出几种高级语言了解程序设计语言的类型和基本知识,了解程序了解程序设计语言的类型和基本知识,了解程序和语句的基本类型和语句的基本类型理解程序编译生成的过程和原理理解程序编译生成的过程和原理主要内容计算机语言的发
2、展计算机语言的发展程序设计语言的几种范型程序设计语言的几种范型程序设计语言的语法元素和功能划分程序设计语言的语法元素和功能划分程序的生成和运行程序的生成和运行第一节第一节 计算机语言的发展计算机语言的发展6.1 计算机语言的发展计算机语言的发展就程序设计语言来讲,经历了机器语言、就程序设计语言来讲,经历了机器语言、汇编语言、高级语言、非过程语言等汇编语言、高级语言、非过程语言等4个阶个阶段。第段。第5代自然语言的研究也已经成为学术代自然语言的研究也已经成为学术研究的热点。研究的热点。6.1.1自然语言与形式语言 1、自然语言、自然语言自然语言的定义:自然语言的定义:人类的语言文字是人类最普遍使
3、用的符号系统,其最基本最普遍的形式是自然语言符号系统。自然语言是某一社会发展中形成的一种民族语言,例如汉语、英语、法语和俄语等。自然语言符号系统的基本特征:自然语言符号系统的基本特征:歧义性;不够严格和不够统一的语法结构;2、形式语言、形式语言定义:定义:人工语言符号系统发展的第二阶段叫形式化语言,简称形式语言。形式语言是进行形式化工作的元语言,它是以数学和数理逻辑为基础的科学语言。形式语言的基本特点如下:形式语言的基本特点如下:有一组初始的专门的符号集有一组精确定义的,由初始的专门的符号组成的符号串,转换成另一个符号串的规则。在形式语言中,不允许出现根据形成规则无法确定的符号串。6.1.2
4、机器语言与汇编语言机器语言与汇编语言1、机器语言、机器语言由“0”和“1”的字符串组成 表 61裸机级计算机语言中有关抽象理论和设计形态的主要内容 计算机语言抽象理论设计裸机级的主要内容和成果语言的符号集为01用机器指令对算法进行描述图灵机过程语言的基础波斯特系统字符串处理语言的基础-演算函数式语言的基础等计算模型冯诺依曼型计算机等、实现技术、数字电子计算机产品2、汇编语言、汇编语言为了使程序易读,用带符号或助记符的指令和地址代替二进制代码成为语言进化的目标。这些使用助记符语言的语言后来就被称之为汇编语言。例例 6 4对对2+6进行计算的算法描述进行计算的算法描述()机器指令对2+6进行计算的
5、算法描述 1011000000000110 0000010000000010 101000100101000000000000 第一条指令表示将6送到寄存器AL中,数字6放在指令后八位,第二条指令表示数2与寄存器AL中的内容相加,结果仍存在AL中,第三条指令表示把AL中的内容送到地址为5的单元中。()汇编语言对2+6进行计算的算法描述 MOV AL6 ADD AL2 MOV VCAL汇编语言的特点:汇编语言的特点:汇编语言语句与特定的机器指令有一一对应的关系,但是它毕竟不同于由二进制组成的机器指令,它还需要经汇编程序翻译为机器指令后才能运行。用汇编语言写的程序必然依赖于机器,不同的机器指令系统
6、不同。汇编语言源程序经汇编程序翻译成机器指令,再在实际的机器中执行,这样就汇编语言的用户而言,该机器是可以直接识别汇编语言的,从而产生了一个属于抽象形态的重要概念,即虚拟机虚拟机的概念。6.1.3 高级语言接近于人类的自然语言20世纪50年代是高级语言兴起的年代,早期的有Fortran、Algol、Cobol、Lisp等高级语言。最著名的有BASIC、COBOL、Pascal、Ada、C、C+和Java。高级语言的主要好处(1)高级语言接近算法语言,易学、易掌握,一般工程技术人员只要几周时间的培训就可以胜任程序员的工作;(2)高级语言为程序员提供了结构化程序设计的环境和工具,使得设计出来的程序
7、可读性好,可维护性强,可靠性高;(3)高级语言远离机器语言,与具体的计算机硬件关系不大,因而所写出来的程序可移植性好,重用率高;(4)由于把繁杂琐碎的事务交给了编译程序去做,所以自动化程度高,开发周期短,且程序员得到解脱,可以集中时间和精力去从事对于他们来说更为重要的创造性劳动,以提高程序的质量。第二节第二节 程序设计语言的几种范型程序设计语言的几种范型6.2 程序设计语言的几种范型程序设计语言的几种范型程序语言的分类没有统一的标准,这里根据程序设计的方法将程序语言大致分为:命令式程序设计语言面向对象的程序设计语言函数式程序设计语言逻辑型程序设计语言等1、命令式程序设计语言、命令式程序设计语言
8、命令式语言是基于动作的语言,它关注的是如何让计算机去做人们要求它做的事情。在这种语言中,计算被看成动作的序列。程序形式一般为:statement 1;statement 2;语句的执行(如将两个变量相加而得到第三个变量)可被表示为访问存储位置,以某种方式组合这些值,并将结果存到新的位置。程序的开发涉及建造连续的、要到达最终答案所需的机器状态。大多数程序设计语言采用这种模型,遵循传统计算机的结构,顺序地执行指令。主要有FORTRAN,后来的PASCAL、BASIC和C语言,包括近期出现的Java语言体现了命令式程序设计的关键思想。2、函数式程序设计语言、函数式程序设计语言函数式语言的基本概念来自
9、于LISP语言,这是一个在1958 年为了人工智能应用而设计的语言。函数是一种对应规则(映射),它使定义域中每个元素和值域中惟一的元素相对应。例如:函数定义1:squarex:=x*x 函数定义2:Plustwox:=Plusone Plusone x 函数定义3:fact n:=if n=0 then 1 else n*fact n 一l典型的函数式语言除Lisp外还有Haskell、ML、Scheme等。其中,Haskell是现在广泛用于研究的一种函数语言。3、逻辑型程序设计语言、逻辑型程序设计语言逻辑型语言是一类以形式逻辑为基础的语言,其代表是建立在关系理论和一阶谓词理论基础上的Prol
10、og语言。Prolog程序是一系列事实、数据对象或事实间的具体关系和规则的集合。通过查询操作把事实和规则输入数据库。用户通过输人查询来执行程序。在Prolog中,关键操作是模式匹配,通过匹配一组变量与一个预先定义的模式并将该组变量赋给该模式来完成操作。Prolog程序没有特定的运行顺序,其运行顺序是由计算机决定,而不是编程序的人。它更像一种描述型的语言,用特定的方法描述一个问题,然后由计算机自动找到这个问题的答案。Prolog程序和数据高度统一。在Prolog程序中,程序和数据有相同的形式,也就是说数据就是程序,程序就是数据。Prolog程序实际上是一个智能数据库,Prolog的原理是关系数据
11、库,它是建立在关系数据库的基础上的。实际上它和数据库SQL语言有很多相似之处。4、面向对象的程序设计语言 面向对象程序语言主要包含下面几个概念。对象:对象是人们要进行研究的任何事物,它具有状态和操作。对象状态的具体表示和操作的具体实现都被隐藏起来了。类:类是面向对象语言必须提供的由用户定义的数据类型,它将具有相同状态、操作和访问机制的多个对象抽象成一个对象类。类代表一般,而该类的一个对象代表具体。继承:继承是面向对象语言的另一个基本要素。继承实现了一般与特殊的关系,解决了软件的重用性和扩充性问题。C+、Java和Smantalk是面向对象程序设计语言的代表。第三节第三节 程序设计语言的语法元素
12、程序设计语言的语法元素和功能划分和功能划分6.3程序设计语言的语法元素和功能划分程序设计语言的语法元素和功能划分程序设计语言的语法元素和功能往往决定了一种语言的编程风格。而在实际编程中,程序员都必须遵循由此形成的特定的编程规范。它适用于命令式程序设计语言和大多数面向对象语言。1、语法元素、语法元素程序设计语言的语法元素主要有:字符集、表达式、语句、标识符、关键字和保留字、注释等组成。(1)字符集字符集字符集的选择是语言设计的第一件事。字符集决定了在语言中可以使用的符号,只有字符集里有的符号才能在语言中出现。在计算机科学中有一些标准字符集,如:ASCII码。(2)标识符)标识符标识符是程序设计时
13、设计人员用来命名事物的符号,通常为字符和数字组成的串。不同的语言中,对标识符的命名规则不同,通常以字母开头。也可能使用特殊字符,如用下划线“_”或连接符“-”来改善易读性和长度限制。命名规则通常很简单,主要是为了防止出现系统的误操作。匈牙利命名法。其基本原则是:标识符属性类型对象描述,其中每一对象的名称都要求有明确含义,可以取对象名字全称或名字的一部分。匈牙利命名法非常便于记忆,而且使变量名非常清晰易懂,这样,增强了代码的可读性,方便各程序员之间相互交流代码。(3)操作符符号)操作符符号操作符是用来代表运算操作的符号,每个操作符表示一种运算操作。通常语言中具备赋值操作符、算术操作符、比较操作符
14、、逻辑操作符、位操作符等几类。比如用“+,-,*,/”表示基本的数学算术操作。比较操作符通常包括“大于”、“小于”、“大于等于”和“小于等于”及“不等于”等。逻辑操作符也叫布尔操作符,通常用来表示“与”、“或”、“非”、“异或”等逻辑运算。有些语言中有些特殊的运算,也就有相应的特殊操作符,比如C语言中的“自增”和“自减”操作。(4)保留字)保留字关键字关键字保留字也叫关键字。指在语言中已经定义过的字,使用者不能再将这些字来命名其他事物。每种程序设计语言都规定了自己的一套保留字。保留字通常是语言自身的一些命令、特殊的符号等。例如:BASIC语言规定不能使用LIST作为变量名或过程名,因为LIST
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机科学概论 第6章 程序设计语言 计算机科学 概论
限制150内