2022年编译实验讲义 .pdf





《2022年编译实验讲义 .pdf》由会员分享,可在线阅读,更多相关《2022年编译实验讲义 .pdf(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、个人资料整理仅限学习使用编译原理课程设计讲义黑龙江大学软件学院精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 14 页个人资料整理仅限学习使用编译原理课程设计讲义“编译原理”课程是计算机专业中一门重要的专业理论课,是一门理论性和实践性都很强的课程。为配合编译原理课程的教案,培养学生的实际工作能力,加深对课堂教案内容的理解,通过设计一个小型编译器,更深刻地领会其基本概念、基本工作原理和实现方法,从而具有初步开发系统软件和应用软件的实际能力,特开设此课程设计。二、课程设计的题目用高级程序设计语言实现小型编译器的设计与实现。三、课程设计的主要
2、内容通过小型编译器的设计与实现,使学生系统地掌握编译程序的总体结构以及词法分析程序、语法分析程序、语义分析程序、代码生成程序;掌握结构化设计方法;了解大型软件的设计技术。四、课程设计的具体内容和要求1 掌握 PL/02 掌握形式语言与自动机的概念,能构造识别相应符号串的自动机。3 掌握编译程序的词法分析程序的构造,能改编PL/O 编译程序的总控程序和词法分析程序。4 掌握编译程序中语法分析程序的构造,能改编PL/O 编译程序总控程序和语法分析程序。5 掌握LL(1 、 LR、算符优先等语法分析技术,构造相应的语法分析程67 掌握语法制导生成四元式的算法,并构造将表达式翻译成四元式程序8 掌握编
3、译程序的代码生成程序,并改编PL/0的总控控制和代码生成程序。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 14 页个人资料整理仅限学习使用本课程在词法分析阶段、语法分析阶段、语义分析及代码生成阶段均安排了上机实践的内容,按以下的基本实践内容的要求改编总控程序和相学生在对PL O 语言某一扫描的分析程序或主程序进行修改或护充时,必须保存完整的源程序正本,只需在相应源文件副本上进行修改。然后再重新对修改的程序进行编译,得到新的源文件和新的可执行文件,并用来编译用户编制的含有增加或修改成分的新源程序。实验一用 PLO精选学习资料 - -
4、- - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 14 页个人资料整理仅限学习使用 ( 一实验目的:1TURBO PASCAL2PASCAL3PLO( 二实验内容与步骤1PL/02PLO * * * * * * * * * * * * * * * * * * * * * * * * * 3PLO语言编写求31004 将一正数倒置。5 对任意给定的整数,列出其二进制、八进制、十六进制表示形式。67EBNF 描述 PLO语言的程序结构及构成规则。注:实验二 ( 一实验目的:PL/0 语言程序自行定义的源语言)汇编语言程序12高级语言编写程序:该程序能接受所有的常数
5、( 整数和定点小数3PL/0 的所有保留字。4 用高级语言编写程序:该程序能接受PL/0 的所有界符、运算符。( 三有关说明:1 C2实验三 ( 一精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 14 页个人资料整理仅限学习使用1PLO2PLO3PLO4 ( 二1可将所有标识符归为一类;将常数归为另一类:保留字、界符、运算符符则可采取一词一类。2可事先建立一保留字表,以备识别保留字时进行查询。变量名表及常数表则在词法分3所输出的每一单词,均按形如(CLASS, VALUE 的二元式编码。对于变量标识符和常数, CLASS字段为相应的类别
6、码,VALUE字段是该标识符、常数在其符号表中登记项的序号( 要求在变量名表登记项中存放该标识符的字符串,其最大长度为四个字符;常数表登记项中则存放该常数( 整数 的二进制形式。对于保留字、界符和运算符,由于采用一词一类的编码方式,所以仅需在二元式的CLASS字段上放置相应的单词的类别码,VALUE字段则为“空”。 (或:为便于查看由词法分析程序输出的单词串也可以在CLASS字段上放置单词符号串本身 4( 三有关说明:1PLO2PL O的编译程序中的词法分析程序,使之能识别含repeat 语句的程序。实验四表达式 ( 一精选学习资料 - - - - - - - - - 名师归纳总结 - - -
7、 - - - -第 6 页,共 14 页个人资料整理仅限学习使用1PLO2分别掌握LL(1 、算符优先、LR( 二实验内容及步骤算符优先矩阵( 或 LL(1 矩阵或SLR(1矩阵 ,并编制语法分析程序。例如:给定文法G ET E1 E1 +TE1 TFT1 T1 *FT1 Fi (E(1先构造其SELECT 集合,判定其是否为LL(1 文法;(2是则构造其LL给出句子i+i*i#及1 掌握 LL(1 、算符优先、LR等语法分析方法的构造。2 按要求改编总控程序及语法分析程序。( 二实验内容及步骤1 选择一种你感兴趣的语法分析方法( 算符优先、 LL(1 、SLR )作为编制语法分析程序的依据
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年编译实验讲义 2022 编译 实验 讲义

限制150内