编译原理及实践这本书已经看了5章了,后面还有三章内容没有看,快看完了。但是前几章看的效果很一般,也仅仅是停留在理解字面意思的程度,离掌握基本原理内容的要求差的还很远。而今天学习编译原理第六课--词义分析,感觉学的不是很好,前5章的内容没有消化,所以新内容看的很累,今天大概看了看〈Modern Compiler Implementation in Java, Second Edition〉感觉原版讲解的内容比较容易理解。对编译原理及实践这本书先放下,这几天把离散先看了,然后在这几天学习的基础上好好看看虎书,去真正的进入传说中的编译原理的世界里面。不过这几天也没有白学,虽然没有到很理解的地步,但是这几天的学习,至少能理解了编译原理的过程,以及词法分析和语法分析的基本原理和算法,就差动手编写实践实践了,而对于今天所看的词义分析,大概能了解一点。大致是这样的:
语义分析它包括了上下文无关文法和标准分析算法之外的信息,词义分析实现的算法不象语法分析算法那么清晰地表示,主要原因都是和词义分析的特殊状态决定。所以描述词义分析的方法是:确定语言实体的属性或特性。对词义分析的讲解上首先先从属性和属性文法开始,然后通过属性文法说明实现计算的技术,最后集中词义分析的两个主要方面:符号表和类型检查。具体的内容实在是详细看不进去,所以等读虎书的时候再详细分析吧。