课程设计论坛

注册

 

QQ登录

只需一步,快速开始

发新话题 回复该主题

[课程设计] 编译原理课程设计实验报告 [复制链接]

楼主
文件格式:word
文件大小:108.00KB
适用专业:编译原理
适用年级:本科
下载次数:12 次
我要下载:点击联系下载
论文编号:110349

资料简介:
  两个实验,实验题目如下,有源代码和实验运行效果。
  
实验一 无符号数的词法分析程序
  
一  实验目的
  
1 培养学生初步掌握编译原理实验的技能
  
2 验证所学的理论,巩固所学的知识并加深理解。
  
3 对学生进行实验研究的基本训练
  
二 实验内容及要求
  
1 内容:掌握词法分析的基本思想,并用高级语言编写无符号数的此法分析程序。
  
2 要求:从键盘输入一串字符(包括字母,数字等),最后以“:”结束,编写程序识别出其中的无符号数。
  
3 无符号数的文法规则可定义如下:
  
﹤无符号数﹥------﹤无符号实数﹥|﹤无符号整数﹥
  
﹤无符号实数﹥------﹤无符号整数﹥.﹤数字串﹥[E﹤比例因子﹥]|﹤无符号整数﹥E﹤比例因子﹥
  
﹤比例因子﹥------﹤有符号整数﹥
  
﹤有符号整数﹥------[+|-]﹤无符号整数﹥
  
﹤无符号整数﹥------﹤数字串﹥  ﹤数字串﹥------﹤数字﹥{﹤数字﹥}   ﹤数字﹥-----0,1,2,….9
  
4无符号程序的流程如下:
  
三 试验程序如下
  
四 实验结果截图如下:
  

  

  
实验二 逆波兰式的生成程序
  
一  实验目的
  
1 培养学生初步掌握编译原理实验的技能
  
2 验证所学的理论,巩固所学的知识并加深理解。
  
3 对学生进行实验研究的基本训练
  
二 实验内容以及要求
  
1内容: 掌握语法分析的基本思想,并用高级语言编写逆波兰式的生成程序。
  
2 要求:利用逆波兰生成算法编写程序,并将键盘上输入的算术表达式转化为逆波兰式。
  
3 逆波兰式的涉及到的运算符的优先级如下。
  
关系  右
  

  

  
左    +    -    *    /    !    (    )
  
+    ﹥    ﹥    ﹤    ﹤    ﹤    ﹤    ﹥
  
—    ﹥    ﹥    ﹤    ﹤    ﹤    ﹤    ﹥
  
*    ﹥    ﹥    ﹥    ﹥    ﹤    ﹤    ﹥
  
/    ﹥    ﹥    ﹥    ﹥    ﹤    ﹤    ﹥
  
!    ﹥    ﹥    ﹥    ﹥    ﹥    ﹤    ﹥
  
(    ﹤    ﹤    ﹤    ﹤    ﹤    ﹤    =
  
)    ﹥    ﹥    ﹥    ﹥    ﹥        ﹥
  
如上表所示,表示了+,—,*,/,!,(,)7中运算符之间的相互优先关系。“﹥,﹤,=”分别表示大于,小于,等于三种优先关系。
  
4 逆波兰式的生成算法关键在于比较当前运算符与栈顶运算符的优先关系,若当前运算符的优先级别高于栈顶运算符则当前运算符入栈,反之栈顶运算符退栈。如下是此算法的流程图:
  
三  实验程序
  
四 实验结果截图


资料文件预览:
共1文件夹,1个文件,文件总大小:108.00KB,压缩后大小:42.08KB

  • 编译原理课程设计实验报告
  • doc编译原理课程设计实验报告.doc  [108.00KB]

我要下载:编译原理课程设计实验报告
分享 转发
TOP
沙发

好东西,我正需要...收下了.........
TOP
板凳

TOP
地板

加油

这个系列的帖子都不错
TOP
5#

人过留名,雁过留声。

人过留名,雁过留声。

看帖回帖,占位顶贴!
TOP
6#

TOP
7#

免费提供吗?
TOP
8#

嘿嘿

没看懂
TOP
9#

顶~~~

努力赚积分
TOP
10#

不是免费的么

不是免费的么
TOP
发新话题 回复该主题