云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 山东科技大学编译原理课程设计

山东科技大学编译原理课程设计

  • 62 次阅读
  • 3 次下载
  • 2026/4/25 6:53:57

山东科技大学学生课程设计

五、总结

经过努力,终于完成了本次实验,在实验中遇到了诸多问题,以及一些

小的细节的实现,实验开始之前,先温习了C++迭代器部分,觉得使用这部分内容来实现本次的作业很适合,然后开始写需求分析,整理思路以及代码的书写。经过不断地调试,代码部分总算完成,但是和理想中的结果还有很大的差距。分析之后,对代码整体上进行了调整,并参考资料,完成了本次的作业。通过本次作业,不仅学到了新的知识,而且对以往的知识进行了回顾,并在编码上提高了一个新的阶段。对今后的学习和工作都有很大的帮助。

18

山东科技大学学生课程设计

语法分析之 LL1分析法实现

一、设计目的

根据某一文法编制调试LL(1)分析程序,以便对任意输入的符号串进行分析。本次实验的目的主要是加深对预测分析LL(1)分析法的理解。

二、设计要求

程序输入/输出示例:

对下列文法,用LL(1)分析法对任意输入的符号串进行分析: (1)E->TG (2)G->+TG|—TG (3)G->ε (4)T->FS (5)S->*FS|/FS (6)S->ε (7)F->(E) (8)F->i 输出的格式如下:

(1)输入一以#结束的符号串(包括+—*/()i#): (2)输出过程如下:

19

山东科技大学学生课程设计

步骤 分析栈 剩余输入串 所用产生式 1 E i+i*i# E->TG

(3)输入符号串为非法符号串(或者为合法符号串) 注意:

1.表达式中允许使用运算符(+-*/)、分割符(括号)、字符i,结束符#; 2.如果遇到错误的表达式,应输出错误提示信息(该信息越详细越好); 3.测试用的表达式可以事先放在文本文件中,一行存放一个表达式,同时以分号分割。同时将预期的输出结果写在另一个文本文件中,以便和输出进行对照;

三、设计说明 1. 需求分析:

a) 输入及其范围

输入为文法,表达式中允许使用运算符(+-*/)、分割符(括号)、字

符i,结束符#。

b) 输出形式

步骤 分析栈 剩余输入串 所用产生式 1 E i+i*i# E->TG

c) 程序功能

根据输入的文法进行分析,利用LL(1)控制程序根据显示栈栈顶内容、

20

山东科技大学学生课程设计

向前看符号以及LL(1)分析表,对输入符号串自上而下的分析过程

d) 测试数据

输入字符串i+i*i#作为测试。

2. 概要设计

a)数据类型的定义

char Stack[50];/*分析栈*/

char Left[20];/*剩余输入串*/

char arrZhongjie[20]={'i','+','-','*','/','(',')','#'};

char arrNozhongjie[20]={'E','G','T','S','F'}; b) 主程序流程

21

搜索更多关于: 山东科技大学编译原理课程设计 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

山东科技大学学生课程设计 五、总结 经过努力,终于完成了本次实验,在实验中遇到了诸多问题,以及一些小的细节的实现,实验开始之前,先温习了C++迭代器部分,觉得使用这部分内容来实现本次的作业很适合,然后开始写需求分析,整理思路以及代码的书写。经过不断地调试,代码部分总算完成,但是和理想中的结果还有很大的差距。分析之后,对代码整体上进行了调整,并参考资料,完成了本次的作业。通过本次作业,不仅学到了新的知识,而且对以往的知识进行了回顾,并在编码上提高了一个新的阶段。对今后的学习和工作都有很大的帮助。 18 山东科技大学学生课程设计 语法分析之 LL1分析法实现 一、设计目的 根据某一文法编制调试LL(1)分析程序,以

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com