编译原理第1章

编译原理第1章

ID:42769307

大小:604.00 KB

页数:24页

时间:2019-09-22

编译原理第1章_第1页
编译原理第1章_第2页
编译原理第1章_第3页
编译原理第1章_第4页
编译原理第1章_第5页
资源描述:

《编译原理第1章》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、编译原理西安电子科技大学软件工程研究所刘坚题外话一、本课程讨论的领域和希望达到的目的1.1领域程序设计语言的应用-程序设计(PLA)程序设计语言的翻译-编译器的构造(PLT)程序设计语言的设计-语法、语义(PLD)1.2CCC2002中国计算机科学与技术学科教程(ChinaComputingCurricula2002,CCC2002)提出的计算机科学与技术学科的知识体系,包括了14个基本的知识领域。与本课程相关的:1.程序设计基础(PF):程序设计基本结构、算法与问题求解、基本数据结构、递归、事件驱动程序设计。(

2、PLA)2.程序设计语言(PL):程序设计语言概论、虚拟机、语言翻译简介、声明和类型、抽象机制、面向对象程序设计(以上是核心);函数程序设计、语言翻译系统、类型系统、程序设计语言的语义、程序设计语言的设计(以上是选修)。(PLA、PLT、PLD)2题外话(续1)1.3目的1.了解PL的基本要素、工作原理、语言翻译的基本方法;2.用不同的PL进行程序设计,即自学计算机语言的能力;3.具备语言翻译的基本技能。二、学习方法2.1本课程的特点理论与实践并重理论学习要严谨、方法掌握要灵活提高自学能力(push与pull)2

3、.2理论与技术的关系适应飞速变化的技术的根本是注重基础理论学习理论的演变是缓慢的、理论基础是相通的相同的原理可以应用于不同的技术例1质能守恒、物质不灭、借贷内存与外存速度的差异:虚存虚盘3题外话(续2)2.3勤动手、多实践、提高学习能力1.学到的知识是死的,总有过时的时候。只有通过学习知识提高学习能力,才是立于不败之地的保证。2.记笔记:好记性不如烂笔头,通过动手加深理解和记忆。3.做作业、做上机题:自己动手为主,参考“解答”为辅。2.4如何使用习题与上机题解答合理利用“解答”有助于课程的学习。“解答”既不完全正

4、确也不是最好的。1.习题解答:先做作业,后看解答。如不符,思考原因,找出最好的答案。2.上机解答:先看题目要求,根据要求自己设计并实现。如有困难,可部分参考解答。3.提倡学生独立思考,对发现解答错误并给出正确解法、做出选做题、做出上机题扩充部分者,给予加分奖励。(只给第一组,写明姓名、日期。加分按人平分)4.根据需要,可适当上一、两次习题课(学生预先提题目,若课时紧张则不占正课时间)。4题外话(续3)三、其他3.1课代表与辅导1.课代表的职责:收缴作业;安排上机时间、联系上机事宜;反映同学意见;监督辅导老师的工作

5、。2.辅导时间:每周一次,课代表与同学商量后确定。3.2作业与上机作业1.第二、五章收缴一次,第三、四章收缴两次。有独立见解的可直接交给主讲老师,包括,指出解答的错误并给出正确答案、选做题答案等。(仅以第一个收到的为准,包括上届)2.验收上机题,并收缴上机报告。报告内容根据个人对题目要求的理解写。3.3参考书目(重点)1.人民邮电出版社(影印本,编译原理技术与工具)Aho等,Compilers-Principles,Techniques,andTools,19862.清华大学出版社,吕映芝等,“编译原理”3.清华

6、大学出版社(影印版)Hopcroft等,IntroductiontoAutomataTheory,Languages,andComputation(SecondEdition)5第一章引言1.1从面向机器的语言到面向人类的语言面向机器的语言:机器指令、汇编语言面向人类的语言:通用程序设计语言、非过程式语言,等等<1>计算机语言举例例2通用程序设计语言与汇编语言(包括机器指令)Pascal语句:x:=a+b;汇编指令:十六进制代码汇编指令A10002MOVAX,[A]8B1E0202MOVBX,[B]01D8ADD

7、AX,BXA30402MOV[X],AX6<1>计算机语言举例(续)给出003号学生所选课程与成绩:Select学号,姓名,课程名,成绩from学生,选课where学生.学号=“003”;例4LEX的正规式:[a-z][a-z0-9]*returnid;YACC的产生式:E:E‘+’E

8、E‘*’E

9、id;例3SQL学生:选课:学号姓名性别001张梧男002李煦男003王沁女004刘荔女学号课程代码课程名成绩0010104离散数学800010205数据结构900030104离散数学850030205数据结构95学号

10、姓名课程名成绩003王沁离散数学85003王沁数据结构957<2>按范型划分的程序设计语言CCC2002-PL:1.过程式语言、面向对象语言:通用程序设计语言,包括FORTRAN、Pascal、C/C++、Ada83/Ada95、Java等;2.函数语言:面向特点领域的、递归特性,典型代表:Lisp;3.说明性、非算法式语言:浓厚的数学特征,典型代表:LEX/YACC、S

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。