1 / 25
文档名称:

词法分析器.doc

格式:doc   大小:867KB   页数:25页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

词法分析器.doc

上传人:分享精品 2018/3/22 文件大小:867 KB

下载得到文件列表

词法分析器.doc

相关文档

文档介绍

文档介绍:课程设计说明书
设计题目: 词法分析器的实现
专业: 班级:
设计人:
山东科技大学
2014年 6 月 24日
课程设计任务书
学院:信息科学与工程学院专业: 班级: 姓名:
课程设计题目: 词法分析器的实现
课程设计主要参考资料
(1) 编译原理韩太鲁、孙忠林著
(2)
三、课程设计应解决的主要问题
(1) 词法分析器的实现
(2)
(3)
四、任务发出日期: 2014-4-21 课程设计完成日期: 2014-6-24
指导教师签字: 系主任签字:
指导教师对课程设计的评语
成绩:
指导教师签字:
年月日
词法分析器的实现
设计目的
,词法分析的过程以及词法分析中要注意的问题。
,进一步加强用高级语言来解决实际问题的能力。
,了解词法分析的过程。
设计要求

编写一个词法分析程序,它从左到右逐个字符的对源程序进行扫描,产生一个个的单词的二元式,形成二元式(记号)流文件输出。在此,词法分析程序作为单独的一遍,如下图所示。
处理过程:在扫描源程序字符串时,一旦识别出关键字、分隔符、标识符、无符号常数中之一,即以单词形式(各类单词均采用相同的结构,即二元式编码形式)输出。每次调用词法分析程序,它均能自动继续扫描下去,形成下一个单词,直至整个源程序全部扫描完毕,并形成相应的单词串形式的源程序。
具体任务有:
(1)组织源程序的输入
(2)拼出单词并查找其类别编号,形成二元式输出,得到单词流文件
(3)删除注释、空格和无用符号
(4)发现并定位词法错误,需要输出错误的位置在源程序中的第几行。将错误信息输出到屏幕上。
(5)对于普通标识符和常量,分别建立标识符表和常量表(使用线性表存储),当遇到一个标识符或常量时,查找标识符表或常量表,若存在,则返回位置,否则返回0并且填写符号表或常量表。
标识符表结构:变量名,类型(整型、实型、字符型),分配的数据区地址
注:词法分析阶段只填写变量名,其它部分在语法分析、语义分析、代码生成等阶段逐步填入。
常量表结构:常量名,常量值

算法如下:
DFA(S=S0,MOVE[][],F[],ALPHABET[])
/*S为状态,初值为DFA的初态,MOVE[][]为状态转换矩阵,F[] 为终态集,ALPHABET[] 为字母表,其中的字母顺序与MOVE[][] 中列标题的字母顺序一致。*/
{
Char Wordbuffer[10]=“”//单词缓冲区置空
Nextchar=getchar();//读
i=0;
while(nextchar!=NULL)//NULL代表此类单词
{
if (nextchar!∈ALPHABET[])
{
ERROR(“非法字符”),return(“非法字符”);
}
S=MOVE[S][nextchar] //下一状态
if(S=NULL)
return(“不接受”);//下一状态为空,不能识别,单词错误
wordbuffer[i]=nextchar ; //保存单词符号
i++;
nextchar=getchar();
}
Wordbuffer[i]=‘\0’;
If(S∈F)return(wordbuffer); //接受
Else return(“不接受”);
}
该算法要求:实现DFA算法,给定一个DFA(初态、状态转换矩阵、终态集、字母表),调用DFA(),识别给定源程序中的单词,查看结果是否正确。

在运行词法分析程序时,应该用问答形式输入要被分析的S源语言程序的文件名,然后对该程序完成词法分析任务。

词法分析程序能给出的错误信息包括:总的出错个数,每个错误所在的行号,错误的编号及错误信息。
本实验要求处理以下两种错误(编号分别为1,2):
1:非法字符:单词表中不存在的字符处理为非法字符,处理方式是删除该字符,给出错误信息,“某某字符非法”。
2:源程序文件结束而注释未结束。注释格式为:/* ……*/
三、设计说明
(一)、需求分析
1、设计要求:
(1)、对给定的程序通过词法分析器能够识别一个个单词符号,并以二元式(单词类型,单词符号)显示;
(2)、可以将要分析的程序保存到文件中进行读取;
(3)、删除无用的空白字符、回车符、及其它非实质性符号。
2、词法分析的任务
从左至右逐个字符地对源程序进行扫描,产生一个个单词符号,把作为字符串的源程序改造成为单词符号串的中间程序。因此,

最近更新

实用的销售方案范文(32篇) 120页

小学生爱护校园环境演讲稿 23页

唯一的检索系统-patentics企业版 45页

2024年吡哌酸项目投资申请报告代可行性研究报.. 68页

2024年保安员考试题库及完整答案(全优) 121页

2024年保密员考试题库及答案(真题汇编) 35页

2024年保密知识题库含答案(综合卷) 35页

2024年县乡教师选调进城考试《教育学》题库附.. 117页

2024年大学计算机基础等级考试题库【考点梳理.. 21页

2024年宪法知识竞赛题库精品【全国通用】 51页

2024年政工职称考试题库附完整答案(必刷) 61页

2024年职业教育法考试题库100道精品【含答案】.. 17页

2024年马原测试题含答案(模拟题) 79页

2024年马原题库400道及答案【各地真题】 79页

中国历史文化知识竞赛100题及一套参考答案 14页

入党积极分子考试题库200道含精品答案 30页

全国计算机二级考试试题题库精选 97页

历史类常识经典考试题100题及参考答案(完整版.. 14页

历史类常识考试100题含答案(能力提升) 2页

1988年高考真题语文试卷-学生用卷 14页

ISTA 3A 测试标准 5页

道路与桥梁工程专业技术专业人才需求调研报告.. 6页

电厂运行班组建设及管理 6页

史密斯圆图--清晰朴素直接打印版(A4刚好) 1页

居民健康档案封面样稿 8页

tbm安全细则 12页

《gb50395-2019《视频安防监控系统工程设计规.. 20页

220KV变电站电气二次部分设计 73页

军用永备机场场道工程战术技术标准 13页