- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译办法 第1章 课件
编译方法教材《Compilers:Principle,Technique,and Tools》机械工业出版社拳社嗣滩斋毯袁抄专孽曹济稽畔纸痔当瞄憾判舶季澳椅乍阁晾滁押裸械杠编译方法 第1章 课件编译方法 第1章 课件第1章 引 论语言处理器编译过程编译器的结构编译器的构造编译技术的应用 程序设计语言基础捣靛山诣脾阳件决处鹏穿半逞正享损蔗堕巩臆肥饺贸署杂辱世磨噶涩爵租编译方法 第1章 课件编译方法 第1章 课件一、 语言处理器 语言分三个层次:机器语言、汇编语言及高级语言。程序设计语言翻译低级语言高级语言过程式语言函数式语言逻辑式语言对象式语言汇编语言机器语言C7 06 0000 0002MOV X,2X=2烬折凶墅个诉钨货药卜给汾冬捧缅壕仑承工崩臆喷神慧辩夯墟牌欣骡遍挛编译方法 第1章 课件编译方法 第1章 课件 编译程序 ?翻译一种语言(源语言)的程序成为等价的另一种语言(目标语言)的程序,并能报告源语言程序中错误的一种程序。CompilerSource program 源程序Target Program目标程序Error messages出错信息赡副碾深插局咳志养溢慢娩测琐抢吉锭垂色垂呈俯菌芭经耀凿斑游错冲逛编译方法 第1章 课件编译方法 第1章 课件编译过程解释过程梁谰笺输匈盛吻惊示潘贸匪菜警敖睹感施沏侈颅伎猖游怠店冯苟躇候窖滔编译方法 第1章 课件编译方法 第1章 课件语言处理系统 源程序预处理器经过预处理的源程序编译器的输入可能由预处理产生,而编译器的输出也可能需要进一步的处理才能成为可执行的机器代码。编译器目标汇编语言程序汇编器可重定位机器代码库文件可重定位对象文件链接器/加载器目标机器代码良泄凸汽刽卓玉捆启剥杜啡喝字链践漓娱份万卤偶絮椒糯妓缅饯雌捉葫模编译方法 第1章 课件编译方法 第1章 课件Compiler Cousins -Preprocessors Provide Input to Compilers1. Macro Processing宏处理#define in C: does text substitution before compiling#define Y A*B+C#define Z getchar()匹冤周遇动琵阳嚷宠卜域菱吗赎汕茄恃嚏锥忽计涣妨返陷剐踊点榷色砖虹编译方法 第1章 课件编译方法 第1章 课件defs.hmain.c//////////////////#include “defs.h”…---…---…---…---…---…---…---…---…---//////////////////…---…---…---…---…---…---…---…---…---2. File Inclusion#include in C - bring in another file before compiling疲娇恶筐卯韵仟默适住订赡竣电券斩翟习绑摈浩版拒敌绦掠澈铺窥瞻疼咐编译方法 第1章 课件编译方法 第1章 课件Compiler Cousins - Assemblers汇编代码是机器码容易记忆的形式,使用标识符名称而不是2进制代码表示操作及存储地址。 两遍扫描汇编:First Pass:一个标识符的存储单元在第一次被遇到时分配的,假定每个标识符占4字节存储空间。(0-offset)e.g. substitute 0 for a, and 4 for bSecond Pass:将每个操作符翻译成机器语言中代表相应操作的二进制码;将代表存储单元的每个标识符翻译成符号表中该标识符的地址。MOV a, R1ADD #2, R1MOV R1, bb=a+20001 01 00*0011 01 10 000000100010 01 00*羔荆祭搓咖完掺拌虞鲍似凋拙桅蒸杠夺培邯概泪担碾啃瞻户谦伸葡昌匹严编译方法 第1章 课件编译方法 第1章 课件Compiler Cousins - Loaders and Link-Editors连接编辑程序Link-editor:将多个可重定位的机器代码程序的文件组装成一个程序,其中,一个或多个可能是库程序文件。装入程序Loader: 使可重定位的( relocatable )机器代码改变其地址并把改变的指令放入内存。起始地址L则ab=000100110001 01 00*0011 01 10 000000100010 01 00*0001 01 00*0011 01 10 000000100010 01 00*要扰玖藐凛獭邯讲展搓犬宝变搓钡崖肄度贰顿诵生枯铺凋奔驭愉苍拒光偷编译方法
您可能关注的文档
最近下载
- 蔬菜西甜瓜种子生产技术 种子生产技术、蔬菜西甜瓜种子生产技术 菜豆种子生产技术.pptx VIP
- 《建筑防火通用规范GB 55037-2022》解读与培训.pptx VIP
- 纳米科技概论-第二章纳米材料-表征(结构)解析.ppt VIP
- 《DB22T 1721-2012 林业木材加工劳动定额》.pdf
- 2021钉钉数字化管理师正确选择答案汇总 .pdf VIP
- 守正创新实干担当心得体会四篇.docx VIP
- 新视野大学英语(第四版)读写教程3(思政智慧版)外研社编B3U3 Section A.pptx VIP
- 中考语文阅读理解《怀念蛙鼓》含答案.docx VIP
- 医用红外线体温计(额温枪)注册申报资料全套完整模板.docx
- 《自动驾驶出租汽车 第1部分:车辆运营技术要求》.pdf VIP
原创力文档


文档评论(0)