编译原理湖南大学

编译原理湖南大学

ID:39632112

大小:2.27 MB

页数:60页

时间:2019-07-07

编译原理湖南大学_第1页
编译原理湖南大学_第2页
编译原理湖南大学_第3页
编译原理湖南大学_第4页
编译原理湖南大学_第5页
资源描述:

《编译原理湖南大学》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、杨晓波湖南大学信息科学与工程学院Email:248133074@qq.com2/23/2011QQ群:81711763(编译原理)(输入学号进行验证,进入后改名为年级+学号后三位+姓名,如:07101张三)编译原理CompilerPrinciples2010-1-14教材及参考书赵建华等译.编译原理(第2版).机械工业出版社,2009龙之书陈火旺.程序设计语言编译原理(第3版)国防工业出版社.2000学习内容及动机课程内容编译程序构造的基本原理和实现技术.学习动机:提高学习能力、实践能力和计算思维能力编译程序是程序语言应用的基础在

2、早期的ACM图灵奖中程序设计语言、编译理论与方法约占1/3程序语言上千种,而其编译器的构造原理却相通其模型、理论和算法广泛应用,如:代码优化技术用于寻找软件缺陷和漏洞有穷自动机和正则表达式用于深度包检测文法用于自然语言翻译学好编译原理有助于更好地理解高级语言有助于构造一些实用的工具万变不离其宗怎样构造编译程序构造编译程序的前提:掌握源语言掌握目标语言掌握编译方法考核方式及要求作业20%+实验30%+笔试50%+表现-3~3要求DIY、按时交抄袭计0分,过期不候作业:word2003文档,宋体5号第一章要点语言处理器(是什么,做什么

3、)编译器的结构(有什么)编译程序的其他问题遍前端与后端编译程序的构造方法(怎么做)程序语言的发展历程程序设计语言基础第一章引论1.1语言处理器Q:我们怎么让计算机工作的?A:编程。Q:计算机能直接执行什么程序?A:机器语言程序Q:我们所书写的程序一般是面向人类的高级语言程序,它们是怎样执行的?1.1语言处理器程序的执行方式解释型,如:BASIC编译型,如:C,C++混合型,如:JAVA其中后两种都要使用编译程序(编译器)。源程序目标程序编译器1.1语言处理器编译程序(compiler)把某一种语言程序(源语言)等价地转换成另一种语

4、言程序(目标语言)的程序输入输出目标程序运行当目标程序是一个可执行的机器语言程序,可被用户调用,处理输入并产生输出1.1语言处理器解释程序把源语言写的源程序作为输入,但不产生目标程序,而是直接利用输入执行源程序中的指定操作。输入输出解释器源程序混合编译器编译执行比解释执行快解释执行错误诊断效果更好JAVA处理器中结合了编译和解释过程,是混合编译器输入输出解释器源程序编译器中间代码JAVA语言操作系统平台Java虚拟机(解释器)Java编译器Java源程序(.java)Java虚拟机代码(.class)解释执行javacjava.N

5、ET框架与VS.NETOperatingSystemCommonLanguageRuntimeADO.NET:DataandXMLASP.NET:Web Services&WebFormsWindows FormsCommonLanguageSpecificationVisualStudio.NETVBC++C#JScript….net框架类似java虚拟机.net编程工作原理操作系统平台CLR各自的编译器高级语言代码(支持CLR,符合CLS)托管代码(MSIL)即时编译JIT操作系统平台CLR各自的编译器操作系统平台CLR各自的

6、编译器操作系统平台语言处理系统要产生可执行的文件,除了编译器外,还需要其他的一些程序。源程序骨架预处理器预处理后的源程序编译器目标汇编程序汇编器可重定位机器代码链接/装载器库文件,其他可重定位目标文件目标机器代码宏扩展,加入头文件1.2编译器结构把英文翻译为中文的过程如下:识别出句子中的一个个单词;分析句子的语法结构;根据句子的含义进行初步翻译;对译文进行修饰;写出最后的译文。词法分析语法分析中间代码产生优化目标代码产生编译器的结构(1)编译器可以分为分析部分和综合部分分析部分(前端,frontend)把源程序分解成组成要素,以及

7、相应的语法结构使用这个结构创建源程序的中间表示同时收集和源程序相关的信息,存放到符号表综合部分(后端,backend)根据中间表示和符号表信息构造目标程序前端部分是机器无关的,后端部分是机器相关的。编译器的结构(2)编译器可分成顺序执行的一组步骤(phase)前端后端与源语言有关与目标机有关词法分析词法分析/扫描(lexicalanalysis,scanning)读入源程序的字符流,输出成为有意义的词素(lexeme)token-name由语法分析步骤使用attribute-

8、value指向相应的符号表条目,由语义分析/代码生成步骤使用例子position=initial+rate*60<=,><+,><*,>语法分析语法分析/解析(syntaxanalysis/p

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

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

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