1014 编写完词法分析程序的感想

经过几个星期的努力,总算把词法分析的程序给完成了,总的来说这是一个坚苦而又漫长的过程。是啊,读了那么多年的书,编写词法分析程序可是第一次呀!看着劳动成果,很欣慰!虽然这不是我一个人做的,是大家的共同努力得来的。

几个星期前,当听到老师布置给我们的这个题目时,我们都蒙了,这么难的题目我们怎么会啊!毕竟我们对那个一无所知,对于老师上课的讲解还能听懂,不过理论与实践之间还是有鸿沟的。我们私下都表示不满,抗议,可是一切都是徒劳,所以我们只能尽我们自己最大的努力把程序给写出来。

“也许完成不了!”两个星期前我们这样说,“完成他没问题!”一个星期前我们这样说,现在我们可以说:“哈哈,完成啦”!

编写词法分析的程序过程有(如解决实际问题),从解决实际问题的角度,我们可以这样来看:首先要了解这个问题的基本要求,即输入、输出、完成从输入到输出的要求是什么;其次,从问题的要害入手,从前到后的解决问题的每个方面,即从输入开始入手,着重考虑如何从输入导出输出。在这个过程中,可确定所需的变量、数组、函数,然后确定处理的过程--算法。可得出最后的结论,进而完成程序的编写。

在设计这个程序时,我们刚开始是根据老师给我们提供的资料,将程序大概的流程图画出来,但是接下去便无从下手了。于是就去图书馆找资料,找到了一些关于词法方面的,可是这点小进展远远不够,这只是一个小小的开始。接着下一步是上网查,找到了些与我们题目相似的,那时我们每个人都很高兴,可是那还不是我们要的,于是又上网查到了些有相关的函数等等,经过自己的反复尝试以及与与同学的讨论,终于在我们大家的努力下,完成了这个程序。因此在编程的过程中,让我了解到要设计一个大型程序,查找资料是至关重要的,在他人的基础上,再根据自己所学的进行修改与调试,最后设计出自己想要的程序。这过程艰辛,但只要你持之以恒,成功指日可待。另外平时扎实的基础也很关键,因为如果你平时学得就不怎么样,那么你面对这么一个比较有难度的程序,你可能会望而却步,看他人的程序都是个难点,更别说让你自己去设计。为了解决此类问题,最好就是多向同学、老师请教,不要怕难为情。尤其是老师,凭他们多年的编写程序的经验,要解决我们的问题,对他们来说只是small case。

虽然对着电脑做程序,有点累有点热,可是当看到劳动成果时,真是别有一番滋味在心头啊!世上无难事,只怕有心人,的确如此。做完这个程序最大的收获就是感受到了集体的力量,当然个人的智慧也是很重要的哦!

编写完词法分析的程序,我们的自信一下子提高了,也让我们对编译原理这门课程有了初步了解。尽管对于某些人来说这种程序很简单,可对我们编译原理的初学者来说,已经很不容易了。这次体验为以后学习编译原理的我们增强了信心,而且享受劳动成果的滋味实在很美妙啊!从这些天的设计过程中,我看到了大家的拼搏与努力,也让我知道团队精神的难能可贵。总之,这次编写词法分析的程序让我受益良多。

时间: 2024-10-20 14:37:59

1014 编写完词法分析程序的感想的相关文章

编写词法分析程序

Note: 这学期修了严厉的Mr.J的编译原理,不定期更新笔记! 欢迎指正! TEST 语言的词法规: 标识符:字母打头,后接任意字母或数字 保留字:标识符的子集,包括:if,else,for,while,do, int,write,read, 无符号整数:由数字组成,但最高位不能为0,允许一位的0, 分界符:(.).;.{.} 运算符:+.-.*./.=.<.>.>=.<=.!=.== 注释符:/* */ 正则表达式: 标识符:        ( a|b|--|z|A|B--|Z

词法分析程序的实现

我们知道人类制造了计算机,计算机需要为我们的生活提供帮助,但是我们需要它帮助我们做什么.怎么做还是需要我们来告诉它,告诉它的过程就是通过一串又一串的字符串也就是代码来告诉它.但是代码对于计算机来说它还是不理解的,它只是辨识0与1而已,所以我们要进一步的将我们编写的程序代码进一步分解变化为机器码.在这过程中,使用的编译器就是完成这一工作的,词法分析程序就是其必不可少的部分. 词法分析是将输入的字符串以单词符号的结果进行输出,以下是便是关于词法规则和各种单词符号对应的种别码的相关图片 在这个词法分析

使用Qt Creator 2.60编写C/C++程序

使用Qt Creator 2.60编写C/C++程序(Windows7-64bit和Ubuntu12.10-64bit). 一.Windows7-64bit +MinGW: 从官网下载qt creator安装,如果没有安装qt(注意qt和qt creator不是一回事)的话是没办法直接使用的,因为qt creator默认使用qmake来构建项目,而qmake是qt的一部分,由于qt太大了,不想安装,就使用cmake来进行构建,安装好之后配置一下: 依次选择:工具->选项->构建和运行->

用VS2010编写的C++程序,在其他电脑上无法运行,提示缺少mfc100.dll的解决办法

问题: 在自己电脑上用VS2010编写的VC++程序(使用MFC库),不能在其他电脑上运行.双击提示: "无法启动此程序,因为计算机中丢失mfc100.dll 尝试重新安装该程序以解决此问题." 解决方案: 方案一 采用静态编译使用VS2010编译的程序在windowsxp中运行时,经常会出现找不到相关的DLL文件,我们可以使用静态编译的方法把这些运行依赖文件打包到*.exe中来,以减少对环境的依赖. 一般可以配置以下两项: 项目 -< **属性 -< 配置属性-<

实验一词法分析程序

一.        实验目的 编制一个词法分析程序 二.        实验内容和要求 输入:源程序字符串 输出:二元组(种别,单词本身) 待分析语言的词法规则 三.        实验方法.步骤及结果测试 1.      源程序名:压缩包文件(rar或zip)中源程序名 cifafenxi.c  cifafenxi.exe 2.      原理分析及流程图 3.      主要程序段及其解释: do { scanf("%s\n",input); i=0; while(input[i]

词法分析程序实验报告

实验一词法分析实验 商业软件工程2班  黄铭坤  201506110147 一.        实验目的        编制一个词法分析程序. 二.        实验内容和要求 输入:源程序字符串 输出:二元组(种别,单词本身) 待分析语言的词法规则 三.        实验方法.步骤及结果测试 1.      源程序名:词法分析.c 可执行程序名:词法分析.exe 2.      原理分析及流程图 (1)   关键字: begin  if  then  while  do  end (2) 

词法分析程序新

词法分析程序的功能:提示用户输入一段需分析的源程序,然后程序读入该源程序的字符串进行词法分析,最后输出词法分析的结果显示在屏幕上.符号与种别码对照表:单词符号 种别码 单词符号 种别码begin     1        :          17if           2        :=        18then      3        <          20while      4       <=        22do         5 end       6    

词法分析程序(编译原理)

一:词法分析程序的功能: 输入单词串,以'begin'开始,以'#'结束.如果是文法正确的句子,则输出成功的信息:'输入单词串成功',否则返回错误提示. 例: 输入 begin a:=345 end # 输出 输入单词串成功 二:符号与种码对照表 单词符号 种别码 单词符号 种别码 begin 1 : 17 if 2 := 18 then 3 <  20 while 4 <= 21 do 5 <>  22 end 6 >  23 l(l|d)* 10 >= 24 dd*

简单的词法分析程序

词法分析程序完成的是编译第一阶段的工作,它的主要任务是从左至右逐个字符地对源程序进行扫描,产生一个个单词序列,用于语法分析. 我写的简单代码实现如下: #include<stdio.h>#include<string.h>#define N 80char word[6][10]={"begin","if","then","while","do","end"};vo