- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件系统课程设计---操作系统:用银行家算法实现资源分配
青岛农业大学
理学与信息科学学院
软件系统课程设计报告
设 计 题 目 编译原理:词法分析器
学生专业班级
学生姓名(学号)
设计小组其他同学姓名(学号)
指 导 教 师
完 成 时 间
设 计 地 点 信息楼139机房
2012年 6 月 7 日
(二)编译原理部分
一、实习题目
将词法分析器设计成单独的程序或供语法分析器调用的子程序,功能包括:要求能够识别数字、标识符、关键字、运算符等。
二、设计思路及算法描述
词法分析程序的功能:
输入源程序,输出单词符号,如图所示:
源程序 单词符号
处理过程:在扫描源程序字符串时,一旦识别出关键字、分隔符、标识符、无符号常数中之一,即以单词形式(各类单词均采用相同的结构,即二元式编码形式)输出。每次调用词法分析程序,它均能自动继续扫描下去,形成下一个单词,直至整个源程序全部扫描完毕,并形成相应的单词串形式的源程序。本程序规定:
(1)关键字begin,end,if,then,else,while,write,read,
do, call,const,char,until,procedure,repeat
(2)运算符:+,-,*,/,=
(3)界符:{,},[,],;,,,.,(,),:(4)其他标记 如字符串,表示以字母开头的标识符。(5)空格、回车、换行符跳过。
在屏幕上显示如下:( 1 , 无符号整数)
( begin , 关键字 )
( if , 关键字 )
( +, 运算符 )
( ; , 界符 )( a , 普通标识符 )
1.预处理:把源文件一个字符一个字符的读入词法分析程序设置的输入字符结构体数组中(输入缓冲区),读入过程要删除多余的空格;2.源程序字符数组中获得单词, 编码为二元式.:二元式采用结构体数组存储, 把单词类型和词元记录下来。
流程图
Y
N
Y
N Y
Y
N Y
N
N
N
Y
N N
Y
Y
N
三、程序代码:
#include iostream
#includestring
using namespace std;
#define??MAX 22??????????
char ch = ;
string key[15]={begin,end,if,then,else,while,write,read,
do, call,const,char,until,procedure,repeat};
int Iskey(string c){?????????//关键字判断
???int i;
???for(i=0;iMAX;i++) {
??????if(key[i].compare(c)==0) return 1;
???????}?
????return 0;
}
int IsLetter(char c) {????????//判断是否为字母
????if(((c=z)(c=a))||((c=Z)(c=A))) return 1;
????else return 0;
}
int IsDigit(char c){??????????//判断是否为数字
?????if(c=0c=9) return 1;
?????else return 0;
}
void fenxi(FILE *fpin){
????string arr=;??????????
????while((ch=fgetc(fpin))!=EOF) {
????????????arr=;????????
?????????if(ch== ||ch==\t||ch==\n){}?????
?
?????????else if(IsLetter(ch)){
?????????????????while(IsLetter(ch)||IsDigit(ch)) {
????????????????????????????????if((ch=Z)(ch=A)) ch=ch+32;???
????????????????????????
您可能关注的文档
- 资格考试银行从业测验小我存款讲座.doc
- 资格考试浅析中西古典园林的审美差异.doc
- 资深销售总结的卖房“逼定“技巧 你就是这样被忽悠买了房.doc
- 赊销合同.doc
- 赖世雄 中级美国英语教程文字稿 完美版.doc
- 资讯管理期中报告资讯系统的企业价值与管理变革.ppt
- 赢在沟通艺霖老师培训课程讲义.ppt
- 赤峰市区二O一二年第一季度材料价格信息.doc
- 赫尔辛基宣言中文版doc.doc
- 走出创新的误区德鲁克创新理论的启示.doc
- “新”“心”相连,携手新征程-内蒙古新高考备考策略+课件-2025届高考政治一轮复习.pptx
- 第五章+地球上的大气++第3讲+热力环流高考地理2025届高考第一轮复习课件1.pptx
- 2025届高考地理一轮复习:地质图像判读+课件.pptx
- 2024届高三英语二轮复习名词性从句课件.pptx
- 2025届高三地理一轮复习说课课件+“研究课标+重视基础+着眼能力”——以浙江卷四地表格类选择题为例.pptx
- 2025届高考地理一轮复习课件++地球自转及意义.pptx
- 中国古代史主题探究+课件--2025届高三新高考统编版历史基础知识巩固一轮复习.pptx
- 读后续写倒装句+课件+2025届高考英语一轮复习.pptx
- 第四课++我国的个人收入分配与社会保障课件-2025届高考政治一轮复习统编版必修二经济与社会.pptx
- 2025届高考专题复习:文言文断句技巧.pptx
文档评论(0)