![课程资源编译原理课件_第1页](http://file4.renrendoc.com/view/7ec8245edc277570c0efe0cc9267c35e/7ec8245edc277570c0efe0cc9267c35e1.gif)
![课程资源编译原理课件_第2页](http://file4.renrendoc.com/view/7ec8245edc277570c0efe0cc9267c35e/7ec8245edc277570c0efe0cc9267c35e2.gif)
![课程资源编译原理课件_第3页](http://file4.renrendoc.com/view/7ec8245edc277570c0efe0cc9267c35e/7ec8245edc277570c0efe0cc9267c35e3.gif)
![课程资源编译原理课件_第4页](http://file4.renrendoc.com/view/7ec8245edc277570c0efe0cc9267c35e/7ec8245edc277570c0efe0cc9267c35e4.gif)
![课程资源编译原理课件_第5页](http://file4.renrendoc.com/view/7ec8245edc277570c0efe0cc9267c35e/7ec8245edc277570c0efe0cc9267c35e5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
CompilingPrinciples&CompilerConstructionZhaiYuqing
1、Compilers:Principles,Techniques,andTools(2ndEdition),A.VAho,RaviSethi,J.DUllman,人民邮电出版社,20082、ModernCompilerImplementationinC,AndrewWAppeal,人民邮电出版社,20053、ModernCompilerImplementationinJava,AndrewWAppeal,高等教育出版社,20034、程序设计语言编译原理,陈火旺,国防工业出版社,2000MainReferencesTheroleofacompilerinasystemKernelOSKernelOSShellDBMSApplicationProgramsACompiler1、Seeingthedevelopmentofacompilergivesyouafeelingforhowprogramswork.ThatcanhelpyouunderstandtheinternalprocessofprogramexecutiondeeplyWhytoarrangethecourseofcompilers?2、Manyalgorithmsandmodelsyouwilluseincompilersarefundamental,andwillbeusefultoyouelsewhere:automatacontext-freegrammarsWhytoarrangethecourseofcompilers?3、ToprogrammoreefficientprogramsNotes:Compilerwritingspansprogramminglanguages,machinearchitecture,languagetheory,algorithms,andsoftwareengineering.Andtheideasbehindprinciplesandtechniquesofacompilerwritingcanbeusedmanytimesinthecareerofacomputerscientist.Whytoarrangethecourseofcompilers?ProgramLanguageSyntaxSemanticsPragmaticsLanguageHighLevelAssemblingMachineHumanMachineTranslatingCompilingInversecompilingTranslating:OralTranslatingCompiling:WrittenTranslatingHowtoteachthecourseofcompilers?Howaprogramtobeprocessedandrun?SourceCodeCorrectedCodeLexical&SyntaxAnalysisIntermediatedCodeSyntax-directedTranslationOptimizedCodeOptimizationAssemblingCodeTargetCodeGenerationBinaryCodeAssemblerExecutableCodeLinkingOSDLLToprovideknowledgeofparingtechniques.Toprovideconceptsinintermediatecodegenerationandoptimization.Theobjectiveofthecourse1、Introductiontocompiling2、ProgrammingLanguageandGrammarDefinition3、LexicalAnalysisTheoreticalModel:RegularGrammar,RegularExpressionandFiniteAutomationImplementation:LexicalAnalysisProgramTools:LEX4、SyntaxAnalysisTheoreticalModel:LL(1)Grammar,LRGrammarImplementation:Derivation-basedPredictiveparsingReduction-basedLRparsingUsingambiguousgrammarsTools:YACCFrameworkofTheCourse5、IntermediateCodeGenerationandSyntax-directedTranslation6、CodeOptimization:BlockOptimization,LoopOptimization,GlobalOptimizationFrameworkofTheCourse1、Focusonunderstandtheprinciplesdeeply2、Noticetherelationsamongthechapters3、Domoreexercises,morepracticesandcombinethetheorywiththelabsHowtolearnthecourse?1、Exercises–20%2、Experiments–30%(Total2experiments)3、Termexamination–50%Howtoevaluate?Chapter1IntroductiontoCompiling
1、Whatisacompiler?verygeneraldefinition:Itisapieceofsoftwarethattranslatesaprograminone(artificial)language,Lang1,toaprograminanother(artificial)language,Lang2.narrowerdefinition:OurprimarilyfocusisthecasewhereLang1isaprogramminglanguagethathumansliketoprogramin,andLang2is(oris“closerto”)amachinelanguage,thatacomputer“understands”andcanexecute.Chapter1IntroductiontoCompiling
1、Whatisacompiler?
CompilerSourceProgramTargetProgramErrorMessagesChapter1IntroductiontoCompiling
2、Whyavoidcompilers&programinmachinelanguage?Agoodprogramminglanguageallowsustothinkatalevelofabstractionsuitablefortheproblemdomainweareinterestedin.Agoodprogramminglanguageshouldalsofacilitaterobustcodedevelopment.Chapter1IntroductiontoCompiling
3、TheAnalysis-SynthesisModelofCompilationLinearanalysisHierarchicalanalysisSemanticanalysis(typechecking)Chapter1IntroductiontoCompiling
3、TheAnalysis-SynthesisModelofCompilationAnalysispart:BreakupthesourceprogramintoconstitutepiecesandcreateanintermediaterepresentationofthesourceprogramNotes:Oneofordinaryintermediaterepresentationmethodsissyntaxtree/parsetreeChapter1IntroductiontoCompiling
3、TheAnalysis-SynthesisModelofCompilationSyntaxTree/Parsetree:Ahierarchicalstructure=x+y*2zx=y+2*zAssignmentstatementid=expxexpopexp+idyexpnum2op*expidzSyntaxTree(isacompressedrepresentationofparsetree)ParseTreeChapter1IntroductiontoCompiling
3、TheAnalysis-SynthesisModelofCompilationSynthesispart:ConstructthedesiredtargetprogramfromtheintermediaterepresentationChapter1IntroductiontoCompiling
4、Howtoconstructacompiler?PrograminamachinelanguagefortargetmachinedirectlyPrograminanassemblinglanguageNotes:ThekernelofacompilerisusuallyprogrammedinanassemblinglanguagePrograminhigh-levellanguageNotes:Thisisanordinarymethod
Chapter1IntroductiontoCompiling
4、Howtoconstructacompiler?Self-CompilingUsecompiler-constructiontoolsLex,YaccPortamongdifferentplatformsNotes:Whenconstructingacompiler,asourcelanguage,adestinationlanguageandthecompilingmethodsshouldbeconsideredChapter1IntroductiontoCompiling
5、Compiler-ConstructionToolsParsergenerators:Producesyntaxanalyzers,normallyfrominputthatisbasedonacontext-freegrammarScannergenerators:Automaticallygeneratelexicalanalyzers,normallyfromaspecificationbasedonregularexpressionChapter1IntroductiontoCompiling
5、Compiler-ConstructionToolsSynt
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 鞍山英语二模数学试卷
- 2025年度旅游度假村租赁服务合同模板
- 2025年度湖南文化旅游资源开发劳动合同
- 电商平台SEO优化实战案例
- 生态平衡与健康自然与人类的关系
- 2025年度荒地承包合同书范本(含农业项目融资及风险分担条款)
- 电信企业人力资源培训的现代化转型
- 汇报中如何有效传达活动策划思路
- 苏科版数学七年级下册听评课记录7.4认识三角形
- 电力系统的电能质量监测与维护策略研究
- 妇产科急诊患者院前急救
- 上海高考英语词汇手册
- 2021年江苏省淮安市淮阴中学高一政治下学期期末试题含解析
- 公共政策工具-课件
- 2022年四川省成都市成华区七年级下学期期末语文试卷
- 石油化工、煤化工、天然气化工优劣势分析
- 10kV配网工程变配电(台架变、箱变、电缆分接箱)的安装设计施工精细化标准
- Q∕GDW 12118.3-2021 人工智能平台架构及技术要求 第3部分:样本库格式
- 客户的分级管理培训(共60页).ppt
- 广东省义务教育阶段学生转学转出申请表(样本)
- 如何成为一个优秀的生产经理
评论
0/150
提交评论