编译原理课程设计实验报告(共9页).docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《编译原理课程设计实验报告(共9页).docx》由会员分享,可在线阅读,更多相关《编译原理课程设计实验报告(共9页).docx(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上中国海洋大学实验报告姓名:邓汇星 专业年级:2012级计算机学号:同组人: 窦猛 专业年级:2012级计算机 学号:编译原理课程设计实验报告【实验题目】:实验1:用Lex设计词法分析器1【实验目的】:学会用lex设计一个词法分析器。【实验内容】:使用lex为下述文法语言写一个词法分析器。语言文法: PROGRAM ; BEGIN END. VAR ;: | : ; INTEGER | REAL | , | ; | | | := IF THEN ELSE WHILE DO BEGIN END | + | - | * | / | | () | | | | . | . |
2、| =| A | B | | X | Y | Z | a | b | | x | y | z0|1|2|9【实验要求】:输入为用该语言所写的源程序文件;输出为记号序列,每个记号显示为二元组(记号名,记号属性值)的形式。输出可以在屏幕上,也可以输出到文件中。不要求建立符号表。在cygwin下用flex和gcc工具将实验调试通过,并能通过例子parser0中testcases目录下的test1.p测试例的测试。【实验参考】:exam1.l和exam2.l。请认真阅读例子,发现错误及时提出。【实验过程】:根据编译原理实验的exam1.l和exam2.l的代码进行修改,添加对一些符号的定义,设计成为一
3、个新的此法分析器,使得改词法分析器能够对实验要求的记号进行识别,识别效果如下:PROGRAM test;VAR i, j, k: INTEGER; f0: REAL;BEGIN i := 1; j := 1; k := 0; f0 := 3.2; WHILE k=100 DO BEGIN IF j 20 THEN BEGIN j := i; k := k+1; f0 := f0*0.2 END ELSE BEGIN j := k; k := k-2; f0 := f0/.2 END ENDEND.【实验结果截图】;程序用flex和gcc编译调试通过后,以test1.p中的内容座位输入进行词法分
4、析得到以下结果:test1.p的内容如下:PROGRAM test;VAR i, j, k: INTEGER; f0: REAL;BEGIN i := 1; j := 1; k := 0; f0 := 3.2; WHILE k=100 DO BEGIN IF j 20 THEN BEGIN j := i; k := k+1; f0 := f0*0.2 END ELSE BEGIN j := k; k := k-2; f0 := f0/.2 END ENDEND.【实验程序代码】/* 把讨厌的注释去掉 */%#include #define LT1#defineLE2#define GT3#de
5、fineGE4#defineEQ5#define NE6#define WHILE18#defineDO19#define ID 20#define NUMBER 21#define RELOP 22#define NEWLINE 23#define ERRORCHAR 24#define _PROGRAM 25#define _VAR 26#define _INTEGER 27#define _REAL 28#define _END 29#define _THEN 30#define fenhao 31#define maohao 32#define douhao 33#define jia
6、hao 34#define chuhao 35#define dian 36#define chenghao 37#define jianhao 38#define _BEGIN 39#define _ELSE 40% delim t nwsdelim+letterA-Za-zdigit0-9idletter(letter|digit)*numberdigit+(.digit+)?(E+-?digit+)?/* 状态(或条件)定义可以定义在这里 * INITIAL是一个默认的状态,不需要定义 */%s COMMENT%/*BEGIN COMMENT;ECHO;*/BEGIN INITIAL;E
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编译 原理 课程设计 实验 报告
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内