欢迎来到天天文库
浏览记录
ID:52253411
大小:976.84 KB
页数:54页
时间:2020-03-25
《清华大学软件学院编译原理课件pdf.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、THSS341001622010/4301PrinciplesofCompilation王朝坤IISE@TsinghuaTHSS341001622010/4301Chap.1IntroductionChaokunWangIISE@TsinghuaOutlineTHSS341001622010/4301•What–什么是编译和编译器•Why•CourseInfo.•PL–编译与解释的区别和联系•History•Contents•编译各阶段的内容31.1Computer&SoftwareTHSS341001622010/43014CloudComputingTHSS341001622010/
2、4301•PigLatin–PigLatinisadataflowlanguageratherthanproceduralordeclarative.–Usercodeandexistingbinariescanbeincludedalmostanywhere.–Metadatanotrequired,butusedwhenavailable.–Supportfornestedtypes.–OperatesonfilesinHDFS.5THSS341001622010/43016软件开发THSS341001622010/4301•程序开发工具??•如何从编辑器中的文本到可执行程序的??7
3、Alanguage-processingsystemTHSS341001622010/43018Whatis…THSS341001622010/4301•Compilation(编译)–Compilationistheprocesswherebyonecomputerlanguageistranslatedintoanother(usuallysimplerandmorelow-leveli.e.machineorientated)language–Traditionally,programsinahigh-levelcomputerlanguage(e.g.Pascal,C,Lisp)
4、arecompiledintoassemblylanguage(essentiallymachinecode)•Compiler(编译器)–Theprogramthatdoesthetranslationisknownasacompiler.9CompilersTHSS341001622010/4301•Simplystated,acompilerisaprogramthatreadsaprogramwritteninonelanguage—thesourcelanguage—andtranslateitintoanequivalentprograminanotherlanguage—t
5、hetargetlanguage.Asanimportantpartofthistranslationprocess,thecompilerreportstoitsuserthepresenceoferrorsinthesourceprogram.10PreprocessorsTHSS341001622010/4301•Preprocessorsproduceinputtocompilers.Theymayperformthefollowingfunctions.•Macroinclusion.•Fileinclusion.•“Rational”preprocessors.•Langua
6、geextensions.11AssemblersTHSS341001622010/4301•Somecompilersproduceassemblycodethatispassedtoanassemblerforfurtherprocessing.•Othercompilersperformthejoboftheassembler,producingrelocatablemachinecodethatcanbepasseddirectlytotheloader/link-editor.•Therelationshipbetweenassemblyandmachinecode–Assem
7、blycodeismnemonicversionofmachinecode,–namesareusedinsteadofbinarycodesforoperations–namesarealsogiventomemoryaddress.12LoadersandLink-EditorsTHSS341001622010/4301•Usually,aprogramcalledaloaderperformsthetwofunctionsof
此文档下载收益归作者所有