第一章 编译概述(中国矿业大学).ppt

  1. 1、本文档共72页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编译程序生成 编译程序的移植/交叉编译 Step2: L B L L B A L B B 用语言L编写的语言L到语言B的编译程序 新的A机器上语言L到语言B的编译程序 得到机器B上(实现语言)语言L到语言B的编译程序 编译程序相关的软件 预处理程序-preprocessor 宏替换-macro 包含文件展开-include files 汇编程序-assembler 两趟扫描 解释程序-interpreter 连接程序-linker 装入程序-loader 重定位 1.6.2 编译程序的移植技术 编译程序可以通过移植得到,即可以将一个机器(宿主机)上的一个具有自编译性的高级语言编译程序搬迁到另一个机器(目标机)上。而可移植性则是对这种搬迁过程中难易过程的一种度量。如果工作量不大,则称该程序是可以移植的;若移植一个程序的开销远远低于最初研制程序的开销,那么这种程序就是高度可移植的。 编译程序相关的软件 调试程序-debugger cc 编译器中 –g 选项;与-O的关系 描述程序-profiler 性能分析 1.5、语言开发环境中的伙伴程序 编辑器(editor) 预处理器 编译器 连接程序 装配程序 调试程序 源程序:多文件、宏定义和宏调用,包含文件 目标程序:一般为汇编程序或可重定位的机器代码 框架源程序 预处理器 源程序 编译程序 目标程序(汇编) 汇编程序 可重定位机器码 (Obj文件) 可重定位机器码 (文件组) 连接编译 库目标、可重 定位目标文件 可重定位机器码 加载器 可运行的机器代码 1.6 编译程序的构造工具 词法分析:Lex由Mike Lesk在1975年左右为UNIX开发的,现在流行的是Free Software Foundation创建的Gnu complier package包中的Flex 语法分析:Yacc (yet another complier-complier)由Steve Johnson在1975年左右为UNIX开发的,现在流行的是bison++ 基于属性文法的系统:GAG(Generator based on Attributed Grammars), HLP(Helsinki Language Processor) 基于语义文法的系统:CGSG(Compiler Generator for Semantics Grammars) 编译原理的必威体育精装版发展 开发复杂的算法程序,用于优化和简化程序 IDE(Interactive development environment) 并行编译技术:适合并行机和多处理机系统 硬件描述语言及其编译技术 编技术面对的挑战 新的问题 New Computer Architectures: VLIW (Very Long Instruction Word), instead of CISC (Complex Instruction Set Computer) and RISC (Reduced Instruction Set Computer), Multi-core processor (superscalar execution, pipelining, and multithreading); Embedded environment – Small ROM RAM, 特殊的指令集; Program Security. 面对的挑战 指令调度以支持指令的并行执行, 降低CPU能耗 (移动设备); 代码的空间和内存的优化, 以支持微处理器对ROM和RAM的限制; 程序的静态与动态分析以检测程序的安全漏洞; 程序附注信息的认证以解决可执行文件在网络上传输的安全问 题(Proof-Carrying Code); 认证编译器(Certi?ed Compiler): 保证相关性质经编译后还能保持。 c hfwang - 24/46 - 什么是编译程序,同解释程序的区别 编译程序的逻辑结构,分为那几个阶段 编译阶段的组合,怎么组合?组合的依据 编译程序实现的途径,如何实现,如何移植 小 结 * id1:=id2+id3*N := + N 60 * id1 Position id2 initial id3 rate 术语 语法分析(syntax analysis or parsing) The purpose of syntax analysis is to determine the source pr

文档评论(0)

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

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

1亿VIP精品文档

相关文档