- 1、本文档共75页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编译原理(第三版) 陈火旺等编著 (2012年9月-12月) 主讲:朱世松 计算机学院 第二章 高级语言及其语法描述 常用的高级语言 FORTRAN 数值计算 COBOL 事务处理 PASCAL 结构程序设计 ADA 大型程序、嵌入式实时系统 PROLOG 逻辑程序设计 ALGOL 算法语言 C/C++ 系统程序设计 Java Internet程序设计 与机器语言或汇编语言比较,高级语言的优点: 较接近于数学语言和工程语言,比较直观、自然和易于理解; 便于验证其正确性,易于改错; 编写效率高; 易于移植. 2.1 程序语言的定义 程序语言由两方面定义: 语法 语义 (语用-语言成分的使用方法) 一. 语法 程序本质上是一定字符集上的字符串。 语法:一组规则,用它可以形成和产生一个合式(well-formed)的程序。 词法规则:单词符号的形成规则。 单词符号是语言中具有独立意义的最基本结构。一般包括:常数、标识符、基本字、算符、界符等。 描述工具:有限自动机 语法规则:语法单位的形成规则。 语法单位通常包括:表达式、语句、分程序、过程、函数、程序等; 描述工具:上下文无关文法 E→i E→E+E E→E*E E→(E) 语法规则和词法规则定义了程序的的形式结构。定义语法单位的意义属于语义问题。 二. 语义 语义:一组规则,用它可以定义一个程序的意义。 描述方法: 自然语言描述:隐藏错误、二义性和不完整性 形式描述: 操作语义(PL/1) 指称语义(ADA) 代数语义(PASCAL) 三.程序语言的基本功能和层次结构 程序语言的基本功能:描述数据和对数据的运算。 所谓程序,本质上说是描述一定数据的处理过程。 程序的层次结构: 程序 | 子程序或分程序、过程、函数 | 语句 | 表达式 | 数据引用 算符 函数调用 程序语言每个组成成分的逻辑和实现意义 抽象的逻辑的意义 数学意义 计算机实现的意义 具体实现 2.2 高级语言的一般特性 2.2.1 高级语言的分类 强制式语言(Imperative Languge)也称过程式语言:命令驱动,面向语句 FORTRAN、C、Pascal,Ada 应用式语言(Applicative Language):注重程序所表示的功能,而不是一个语句接一个语句地执行 LISP、ML 基于规则的语言(Rule-based Language):检查一定的条件,当它满足值,则执行适当的动作 Prolog 面向对象语言(Object-Oriented Language):封装性、继承性和多态性 Smalltalk,C++,Java 2.2.2 程序结构 FORTRAN 一个程序由一个主程序段和若干辅程序段组成。 辅程序段可以是子程序、函数段或数据块。 每个程序段有一系列的说明语句和执行语句组成。各段可以独立编译。 模块结构,没有嵌套和递归 各程序段中的名字相互独立,同一个标识符在不同的程序段中代表不同的名字。 PASCAL PASCAL程序本身可以看成是一个操作系统所调用的过程,过程可以嵌套和递归。 一个PASCAL过程: 过程头; 说明段(由一系列的说明语句组成); begin 执行体(由一系列的执行语句组成); end 作用域:一个名字能被使用的区域范围称作这个名字的作用域。 允许同一个标识符在不同的过程中代表不同的名字。 名字作用域规则--最近嵌套原则 一个在子程序B1中说明的名字X只在B1中有效(局部于B1); 如果B2是B1的一个内层子程序且B2中对标识符X没有新的说明,则原来的名字X在B2中仍然有效。如果B2对X重新作了说明,那么,B2对X的任何引用都是指重新说明过的这个X。 program main var A, B : real; … procedure P1 var B:boolean; … begin … end procedure P2 var A:integer; … begin … end begin … end PASCAL提供了丰富的数据类型和运算方式,它允许用户动态地申请和退还存贮空间。 ADA 程序包(package):把数据和操作代码封装在一起,支持数据抽象。 一个程序包分为两部分: 可见的规范说明部分,它定义了程序包外面可以访问的对象。 程序包体,它实际定义程序包的实现细节。 package STACKS is type ELEM is private; type STACK is limited private; pr
您可能关注的文档
- 《经典案例分析联想成功之道.ppt
- 《经典案例:植入式广告.ppt
- 《经典的水产配合饲料讲解.ppt
- 《经典诵读.pptx
- 《经典风格.ppt
- 《经济区域化与中国.ppt
- 《经济学——消费者理论.ppt
- 《经济学原理 第一章 导论.ppt
- 《经济学原理 第一章.ppt
- 《经济学原理08.ppt
- 专题06 经济体制(我国的社会主义市场经济体制)-五年(2020-2024)高考政治真题分类汇编(解析版).docx
- 专题11 世界多极化与经济全球化-5年(2020-2024)高考1年模拟政治真题分类汇编(解析版).docx
- 专题03 经济发展与社会进步-5年(2020-2024)高考1年模拟政治真题分类汇编(浙江专用)(解析版).docx
- 专题09 文化传承与文化创新-5年(2020-2024)高考1年模拟政治真题分类汇编(北京专用)(原卷版).docx
- 5年(2020-2024)高考政治真题分类汇编专题08 社会进步(我国的个人收入分配与社会保障)(原卷版).docx
- 专题07 探索世界与把握规律-5年(2020-2024)高考1年模拟政治真题分类汇编(解析版).docx
- 5年(2020-2024)高考政治真题分类汇编专题06 经济体制(我国的社会主义市场经济体制)(原卷版).docx
- 专题11 全面依法治国(治国理政的基本方式、法治中国建设、全面推进依法治国的基本要求)-五年(2020-2024)高考政治真题分类汇编(解析版).docx
- 专题17 区域联系与区域协调发展-【好题汇编】十年(2015-2024)高考地理真题分类汇编(解析版).docx
- 专题01 中国特色社会主义-5年(2020-2024)高考1年模拟政治真题分类汇编(原卷版).docx
最近下载
- 高同型半胱氨酸血症的诊断、治疗与预防专家共识.docx VIP
- 人教版高中英语必修第二册《UNIT 3 THE INTERNET》大单元整体教学设计.pdf
- 微型消防站工作职责(标准版).docx VIP
- 呼唤-快车上玩家地图1 plmap演示版.pdf
- 德邦零担业务诊断及新产品开发项目建议书-2014.pptx VIP
- 人教版高中英语必修第二册《UNIT 4 HISTORY AND TRADITIONS》大单元整体教学设计.docx
- 高同型半胱氨酸血症的诊断、治疗与预防.pptx VIP
- 附件2:汽车专访.pdf VIP
- 2024年食品安全生产经营大比武理论考试题库资料-下(多选、判断题汇总).pdf
- 快车上的恐怖旅行手册.pdf
文档评论(0)