编译原理实验c语言cfg文法,编译原理实验指导终稿.pdf

编译原理实验指导

《编译原理》实验指导

第 1 页

编译原理实验指导

编译原理实验指导书

一、实验的目的

《编译原理》是针对计算机专业的学生开设的一门专业基础课程,对引导学

生进行科学思维和提高学生解决实际问题的能力有重要的作用。开设 “编译原理

实验”的主要目的是让学生加深理解编译原理的基本理论、方法、词法分析、语

法分析、中间代码的生成直到最后的代码生成,了解编译器原理,从而提高学生

分析问、题解决问题的能力。

通过实验实现以下基本目标:

1.深化已学的知识,完成从理论到实践的转化

通过实验,进一步加深对编译原理基本思想、原理的了解。

2. 提高分析和解决实际问题的能力

实验不仅是编译原理的一次模拟训练,同时通过实验,积累经验,提高分析

和解决问题的能力。

3.培养“开拓创新”能力

大力提倡和鼓励在程序中使用新方法,新技术。激发学生实践的积极性与创

造性,开拓思路,设计新算法,进行新创意,培养创造性能力。

二、参加实验的学生应具备的条件

参加实验的学生应当具备计算机程序设计的一些基础的知识。即学生应当熟

练掌握和使用一种计算机操作系统 (windows操作系统等)、一种程序设计语言

(vb、vc、c、delphi 等)。

三、实验要求

实验的要求体现于整个工作的各个阶段中,可根据所选课题的特点而有所侧

重,但应达到如下的基本要求:

(1) 根据课题任务制定合理、可行的工作计划任务;

(2) 制定适当的技术方案;

(3) 学生在老师的指导下独立完成设计过程;

(4) 撰写实验报告(包括实验内容中各个阶段所要求的文字材料);

(5) 通过实验检查评定;

四、实验项目与内容提要

第 2 页

编译原理实验指导

序 性 类 学

实验项目名称 实验内容提要

号 质 型 时

给定一段代码经过词法分析程 必 综

1 词法分析器的设计 序处理后得到可识别的单词序 6

列。 做 合

利用递归思想实现对给定表达 必 验

2 递归下降计算器 式值的求解,加深对确定自顶向 2

下的语法分析的理解。 做 证

利用语法树构造原理,对简单的 必 验

3 语法树生成 2

表达式给出相应的语法树。 做 证

五、实验课程考核办法

1、该实验课程考核成绩按百分制计算,满分为 100 分,60 分为及格,60 分

以上者可获取该学分。

2 、该实验课考核由三部分组成:实验课前预习(20%),实验操作(60%),实

验报告(

实验2 文法的读入、判定和处理 一、实验目的 熟悉文法的结构,了解文法在计算机内的表示方法。 二、实验内容 1、 设计一个表示文法的数据结构; 2、 从文本文件中读入文法,利用定义的数据结构存放文法,并输出; 3、 本实验结果将来还有用。 三、实验要求 1、 了解文法定义的4个部分: G(Vn, Vt, S, P) Vn 文法的非终结符号集合,在实验中用大写的英文字母表示; Vt 文法的终结符号集合,在实验中用小写的英文字母表示; S 开始符号,在实验中是Vn集合中的一个元素; P 产生式,分左部和右部,左部为非终结符号中的一个,右部为终结符号或非终结符号组成的字符串,如S->ab|c 2、 根据文法各个部分的性质,设计一个合理的数据结构用来表示文法, 1) 若使用C语言编写,则文法可以设计成结构体形式,结构体中应包含上述的4部分, 2) 若使用C++语言或java语言编写,则文法可以设计文法类形式,类中至少含有4个数据成员,分别表示上述4个部分 文法数据结构的具体设计由学生根据自己想法完成,并使用C或C++语言或Java实现设计的数据结构。 3、 利用完成的数据结构完成以下功能: 1) 从文本文件中读入文法文法事先应写入文本文件); 2) 根据文法产生式的结构,分析出文法的4个部分,分别写入定义好的文法数据结构的相应部分; 3) 整理文法的结构,判断该文法文法类型,是否为0型,1型,2型或3型文法,并输出判断结果; 4) 在计算机屏幕或者文本框中输出文法文法输出按照一个非终结符号一行,开始符号引出的产生式写在第一行,同一个非终结符号的候选式用“|”分隔的方式输出。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值