西安电子科技大学编译原理复试第一章 引言.ppt

西安电子科技大学编译原理复试第一章 引言.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 编译原理 西安电子科技大学 计算理论与技术研究所 王小兵 xbwang@ * 相关领域 程序设计语言的应用-程序设计(PLA) 程序设计语言的翻译-编译器的构造(PLT) 程序设计语言的设计-语法、语义(PLD) 知识点 中国计算机科学与技术学科教程(CCC2002) 程序设计基础(PF):程序设计基本结构、算法与问题求解、基本数据结构、递归、事件驱动程序设计。(PLA) 程序设计语言(PL):程序设计语言概论、虚拟机、语言翻译简介、声明和类型、抽象机制、面向对象程序设计(核心);函数程序设计、语言翻译系统、类型系统、程序设计语言的语义、程序设计语言的设计(选修)。(PLA、PLT、PLD) 课程简介 * 课程简介 目的 了解PL的基本要素、工作原理、语言翻译的基本方法; 用不同的PL进行程序设计,即自学计算机语言的能力; 具备语言翻译的基本技能; 了解计算机科学的基础理论; 课程特点 提高自学能力; 理论与实践并重; 理论的演变是缓慢的、理论基础是相通的; 相同的原理可应用于不同的技术; 适应飞速变化的技术的根本是注重基础理论学习; * 课程简介 教材 刘坚 编译原理基础 西电出版社 刘坚 《编译原理基础》习题与上机解答 西电出版社 参考书目 吕映芝等 编译原理 清华大学出版社 陈火旺等 程序设计语言编译原理 国防工业出版社 Aho等 编译原理技术与工具 人民邮电出版社 Andrew W.Appel  现代编译程序实现-Java语言 高等教育出版社 Steven S.Muchnick 高级编译器设计与实现 机械工业出版社 Hopcroft等 自动机理论、语言和计算机导论 机械工业出版社 * 课程简介 学习方法 要作笔记; 多思考,勤发问; 多实践、以用促学; 合理使用参考解答; 作业与上机 提前一星期通知交作业; 验收上机题,并交上机报告; * 往届学生报告 编译原理是四大天书中的天书,事实上没有那么恐怖。 第二、三章只要多看书,勤做作业,学好也不难。第四、五章尽管没有涉及算法,但是它与程序的运行方面有很大关系,理解起来还是比较吃力的。 课随好学,但是上机就困难了,由于平时编程方面的欠缺,对于程序如何组织,如何编写,总感觉无从下手。 * 往届学生报告 函数绘图语言采用的分析方法是递归子程序,优点是分析方法非常简单易懂,但涉及到大量栈存储空间操作,大大降低了分析的效率。 实际中的编译器和解释器的构造方法通常采用自动化工具(Lex/Yacc),其语法分析大部分采用LALR(1)文法,其驱动器具有通用性,与文法无关,效率高,但分析表十分复杂,难于手工构造。 * 第一章 引言 1.1 从面向机器的语言到面向人类的语言 面向机器的语言:机器指令、汇编语言 面向人类的语言:通用程序设计语言、非过程式语言 计算机语言举例 [例1]通用程序设计语言与汇编语言(包括机器指令) Pascal语句: x := a+b; C++语句: x = a+b; 汇编指令: 十六进制代码 汇编指令 A10002 MOV AX, [A] 8B1E0202 MOV BX, [B] 01D8 ADD AX, BX A30402 MOV [X], AX * 1.1 从面向机器的语言到面向人类的语言 [例2]SQL:查询003号学生所选课程与成绩 SELECT 学号, 姓名, 课程名, 成绩 FROM 学生, 选课 WHERE 学生.学号=003; 学号 姓名 性别 001 张梧 男 002 李煦 男 003 王沁 女 004 刘荔 女 学号 课程代码 课程名 成绩 001 0104 离散数学 80 001 0205 数据结构 90 003 0104 离散数学 85 003 0205 数据结构 95 学号 姓名 课程名 成绩 003 王沁 离散数学 85 003 王沁 数据结构 95 对吗? * 1.1 从面向机器的语言到面向人类的语言 [例3] Lex和Yacc Lex的正规式:char(char|digit)* return id Yacc的产生式:E : E + E | E * E | id [例4]Unix的shell命令 SHELL=/bin/sh # include env_precomp.mk CPDIR = /u/pbsrc/chp ORAHOME = /oracle/app/oracle/product/734 * 1.1 从面向机器的语言到面向人类的语言 按范型划分的程序设计语言 Simple Proce

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档