编译原理课程设计心得体会

大家可以自主选题,或选择我提供的题目,也可以把几个题目合起来做(如开发一个小的编译器。

然而,更一般的情况,常将词法分析程序设计成一个子程序,每当语法分析程序需要一个单词时,则调用该子程序。

本次课程设计的目的主要是加深对预测分析LL(1)文法语法分析法的理解。

对任一给定的算符文法G,程序输出所有非终结符P的LASTVT(P。

根据用户输入的源程序,有限自动机所识别出的对象完成从单词串到单词的TOKEN串的翻译。

\\.重点、难点重点:状态转换图,有穷自动机。

定在考试把所有的漏动填平。

⑵熟悉某种目标机器结构及指令系统。

⑶掌握编译过程和编译程序的结构。

题目:基于贪心算法的DFA的程序实现设计内容及要求:采用贪心算法实现教材P.62表3.5的DFA,要求从输入串中匹配最长的子串。

每个人应根据所分配的任务进行:1、进行需求分析形成系统数据流图及其数据字典设计(数据内外部存储结构及其上的数据约束与关系集)、进行总体设计形成系统功能层次结构图及其上的接口与调用关系;合理分2配数据工作期与作用域。

期末考试成绩考核与评价标准期末考试|课程目标|评价标准|成绩比例(%)—|—|—|—优秀(0.9~1)|良好(0.8~0.89)|中等(0.7~0.79)|及格(0.6~0.69)|不及格(0.0~0.59)课程目标1|能很好地回答各个题目,概念清楚,逻辑清晰,回答正确,书写规范|能较好回答各个题目,概念清楚,逻辑较清晰,回答正确,书写规范|能较好地回答各个题目,概念较清楚,逻辑较清晰,回答正确|基本能回答各个题目,概念较清楚,逻辑较清晰|不能回答|50课程目标2|解题思路清楚,能写出解决方案,或者能够计算得到正确的结果|解题思路较清楚,能写出解决方案,或者能够计算得到正确的结果|解题思路较清楚,有基本的解决方案,或得到部分结果|有一定的解题思路,基本能够计算得到部分结果|解题思路不清楚,不能得到结果|50注:该表格比例为期末考试成绩比例。

⑶掌握全局优化技术。

题目:LR(1)分析表自动构造程序的实现设计内容及要求:对任意给定的文法G构造LR(1)项目集规范族(按教材P.115所述方法构造,要求实现CLOSURE(I)、GO(I,X)、FIRST(集合FIRST的构造方法参见教材P.78);然后实现LR(1)分析表构造算法。

进一步实现把NFA确定化为DFA的算法(其状态转换矩阵及初态、终,《编译原理课设-(中版)(共25页)》由会员分享,可在线阅读,更多相关《编译原理课设-(中版)(共25页)(25页珍藏版)》请在人人文库网上搜索。

表1本课程对专业毕业要求指标点的支撑课程目标|支撑的毕业要求指标点—|—1.3|1.4|4.1课程目标1|ü||课程目标2|||ü课程目标3||ü|**(三)教学内容安排总体思路**本课程的教学内容,以课程具体目标为总体指导进行制定。

**Introductiontothecourse****“****CompilerConstructionPrincipleand****ImplementationTechnique****”**Acompilerislargescaleandcomplexsystemsoftware,whosefunctionisautomaticallytranslatingaprogramwritteninhigh-levelprogramminglanguageintoanequivalentprograminmachinecode.Implementationofanyhigh-levelprogramminglanguageneedstousecompilertechniques.Thecourse“CompilerConstructionPrincipleandImplementationTechnique”isanimportantobligatorycourseforthemajorofcomputerscienceandtechnology.Thecourseaimsatteachingstudentstograspbasictheory,basicmethodandbasictechniquesincompilerconstruction,aswellastheabilitiestoanalyze,designandimplementacompiler.Themaincontentofthecourseincludesdesignprincipleandimplementationtechniquesforallcomponentsofacompiler,formaldescriptionoflexicon,scannerdesign,formaldescriptionofsyntax,parserdesign,semanticanalyzerdesign,intermediatecodegeneratordesign,codeoptimizationandtargetcodegeneratordesign.Thecoursewillbetaughtinthefirstsemesterofthethirdacademicyear,whichincludes64hours.Itsprerequisitecoursesincludehigh-levelprogramming,datastructure,principleofcomputerorganization.Compilerprojectcoursewillbegivenseparately(thedetailcanbefoundinthesyllabusofcompilerprojectcourse).,Curriculum-design-of-Compilers-Principles简要介绍:这是由广西大学计算机科学与技术系的三位同学编写的编译原理课程设计。

以P.283例10.4为输入,输出P.284图10.10构造过程。

\\.基本要求⑴了解词法分析器自动生成工具。

**(七)代码优化(****2****学时)**(重点覆盖课程目标1,4)主要内容:⑴基本块的划分,程序流图。

**实验四:中间代码生成实验(6学时)**实验内容:(重点覆盖课程目标2,3)利用属性文法和语法制导翻译方法,设计并实现sample语言或者其他语言的中间代码生成器。

篇编译原理的编译过程一般包括:词法分析、语法分析、语义分析与中间代码产生、优化、目标代码生成五个阶段。

标志符:⽤来表⽰各种名字,如常量名、变量名和过程名等。

评论0

没有账号? 注册  忘记密码?