
编译器设计点滴
文章平均质量分 77
zhouhuozhi
奋斗,探求,不达目的誓不罢休
展开
-
实习总结
三周的实习算是告一段落了,更确切的来说,这学期的实习不止三周,因为自己早早的就开始了。本来打算坚持在自己的优快云博客同步记录下整个实习过程的,但最终还是只坚持了几天,当然原因很多,也不可否认自己没有毅力,但自己更倾向于没有心情这个原因。一天下来被编译原理的理论搞得头晕转向,再加上进展得很慢,心特急,这样一来就没心情去写了。相比上学期实习做的“电梯模拟”,这次的编译器给自己发起了更大的挑战,至于自原创 2009-07-12 19:09:00 · 2299 阅读 · 0 评论 -
一个人在战斗
一个人战斗挺苦的自从把注意力转到编译器以来,好久没写博客了。其实一天下来,收获和感想还是很多的,或许是我把自己逼得太紧,以致到了“吝啬”这一点点时间的地步。折腾编译器已有一周时间了(自己比较喜欢用“折腾”一词来描述专业的学习,呵~),进展似乎很慢。究其原因,一个是JAVA功底不行,另一个是从抽象的编译理论转向工程实际实现比较困难。到写这篇博客为止,也仅仅对第一个简单s原创 2009-06-04 07:43:00 · 1099 阅读 · 2 评论 -
抽象语法树(AST)
抽象语法树(AST)最近在做一个类JAVA语言的编译器,整个开发过程,用抽象语法树(Abstract SyntaxTree,AST)作为程序的一种中间表示,所以首先就要学会建立相对应源代码的AST和访问AST。Eclipse AST是Eclipse JDT的一个重要组成部分,定义在包org.eclipse.jdt.core.dom中,用来表示JAVA语言中的所有语法结构。Eclipse原创 2009-06-07 23:19:00 · 32602 阅读 · 5 评论 -
真正开始编译器开发
由于周末连续奋战两天,在过去的一周自己基本完成了简单解释程序的编写,熟悉了AST的的建立和简单操作。新一周的第一天本打算马上着手做词法分析器,可是一周下来堆积了太多的作业,不得不花些时间去处理,所以直到22点才开始看miniJOOL语言的词法规则,这也算开了个好头吧。一天下来也是够累的了,今天就先学到这吧。伴随着轻音乐,慢慢品读着优快云网友靳雄飞的《十年总结》,他的十年历程极大的触动了我原创 2009-06-09 01:20:00 · 1327 阅读 · 0 评论 -
编译器开发-----词法分析器
编译器开发——词法分析器这周本应进入语法分析器设计的,但因上周种种原因没能完成词法分析器的构造,所以推到了今天才完成。下面详细介绍该词法分析器的构造思路: 引子:词法分析的主要作用是根据语言的词法规则对输入的源程序字符流进行分析,识别出一个个单词,再将各单词对应的词法记号依次提供给语法分析器,这些记号作为语言语法中的终结符。因考虑到为MiniJOOL语言构造词法分析器的工作量比较原创 2009-06-16 01:59:00 · 4892 阅读 · 2 评论 -
编译器开发——语法分析器(一)
语法分析引子:语法分析器检查词法分析器输出的记号流是否符合源语言的语法规则;并依据这些规则体现出的程序的各种语法结构的层次,为记号流构建用Eclipse AST表示的抽象语法树AST。通过些实践,了解并掌握语法分析器的多种构造方法,如手工编写、用语法分析的生成工具CUP等来构造语法分析器等等;同时也将学会如何恢复和处理语法分析中遇到的错误。一、SkipOOMiniJOOL语言的语法原创 2009-06-17 10:15:00 · 3678 阅读 · 2 评论