- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课程设计说明书
设计题目: 词法分析程序设计
专 业:计算机科学与技术 班级:2009?3
设计人: 陆婷
学 号: 200901051515
山东科技大学
2012年6月 20日
课程设计任务书
学院信息科学与工程专业计算机科学打技术班级2009?3姓名陆婷
课程设计题目: 词法分析程序设计
二、课程设计主要参考资料
(1) 韩太鲁等,编译原理.石油大学出版社.2007.9
(2)
(3)
三、 课程设计应解决的主要问题:
(1) 判别标识符超过规定长度(20)时,未输出处理结果:
(2) 整数长度过长输岀结果仍为整数类型3;
(3) 对于小数如? 045,被解释为界符和報数;
(4) 对以数字开头的 般标识符的处理,如lOOiuns被解释为整数类型和标识符,未给出 错误提示。
四、 课程设计相关附件(如:图纸、软件等):
(1)
(2)
五、任务发出日期:2012-4-5课程设计完成日期: 2012-6-20
指导教师签字:
系主任签字:
成绩:
指导教师对课程设计的评语
指导教师签字:
年 月 日
词法分析程序
一、设计目的
1、 了解字符串编码组成的词的内涵,感觉一下字符串编码的方法和解读
2、 了解掌握自动机理论、止规式理论在词法分析程序和控制理论屮的应用。
二、实验内容
构造一个自己设计的小语言的词法分析器:
1、这个小语言能说明一些简单的变量
识别诸 如auto,break, case,char,const, continue,
” default”, “do”, “double”, “else”, “enum”, “extern”,
” float”, ”for“, “goto”, “long”,“register”,
nretum,,;,shortM,,signedM,,,sizeof,;,static,,
struct, switch1,typedef,union,unsigned,uvoid, volatile,whiled 保留字;
识别非保留字的一般标识符(有()[]{ }?! + - *
/ 二 二二二! ; 二 +二-二 *二 , */ /* =
@ ; b二# ;错误字符行,其中?#两个符号为错误字符*/下划线、 字符、数字,且第一个字符不能是数字)。
识别数字序列(整数和小数);
识别:二,=, 二之类的特殊符号以及;,(,)等界符。
2、 相关过程(函数):
Scanner ()词法扫描程序,提取标识符并填入display表中
3、 这个小语言有顺序结构的语句
4、 这个小语言能表达分支结构的语句
5、 这个小语言能够输岀结果
总Z这个小语言词法分析器能提供以上所说明到的语法描述的功能……
三、实验步骤
1、测试评价
、测 试1:能说明一些简单的变量,如关键字、一般标识符、界符等;
、测试2:能输出结果:单词符号(内码形式)、各种信息表(如符号表、常
量表等);
、测试程序:
int 乂二5,y二3, z=l;
int a;
if(x(y+z))
a=2;
else if(x(y+z))
a=l;
else
a=0;
、结果:
、从键盘读入;
-|g| x|
荫输入读入方式:丄:从文件中读,2:从犍盘读(输入结東标志位M): 2
int x=5J. 9=3^2=1 ;
int a;
ifxy+z
?l=2 9
eIse ifxy*z
a=l ;
else
a=0;
部分结果如下:
I G P
a:
豊标
常量值
0X0
, 0x5
0x1
, 0x3
0x2
. 0x1
0x3
. 0x2
0x4
, 0x1
0x5
j. 0X0
:A里伙: 类型
变量名称
0X0
x
0x1
y〉
0x2
z
0x3
a
0x4
x
0x5
0x6
y z
0x?
a
0x8
x
0x9
y
0xa
z
0xb
a
0xc
a
?DOCUMENTS AND SETTINGS)ADMINISTRATOR^ffimJ9]x](类型:该标识符所属的类型,如关键字,变量等;下标:该标识符所对应表(如变量标 识符表,常量标识符表等)中其相应的位置,下同)
?DOCUMENTS AND SETTINGS)ADMINISTRATOR^ffim
J9]x]
、从文件读入,输出到文件;
??C:DOCUMF:NTS AND SETTINGSADMINISTRATOR^面WNGHUYNGAAAAshiyarHDebugX
k
tenter the input file name:
0:\intest.txt
Enter the output file nane:
D:\outtest.txt
Press any key to continue.
部分结果如下:
B ou
原创力文档


文档评论(0)