编译原理复习点总结[转载]
参考:https://blog.csdn.net/cflys/article/details/71274116#%E4%BB%80%E4%B9%88%E5%8F%AB%E7%BC%96%E8%AF%91%E7%A8%8B%E5%BA%8F
1.将源程序语言翻译成目标程序语言。
2.共有6个阶段:
词法分析、语法分析、语义分析、中间代码生成、中间代码优化、目标代码生成。
1)词法分析:对输入的字符串进行扫描和分解,识别出 标识符、运算符、常数、特殊符,识别出每一个单词及其种类。
//只是分析单个的单词。
包括正则表达式,有限自动机。
2)语法分析:将单词分解成各类语法短语,可以表示为语法树,确定整个串是否构成语法上的正确程序。
3)语义分析:标识符是否声明,类型检查,强制类型转换,下标越界检查。
4)中间代码生成:
3.表格与表格管理
符号表,用来记录每个标识符的名称以及它的类型。
比如:如果是变量名、类型是什么、占多大内存、地址是多少等等。
//感觉这样去看还是抽象,应该留一个小时看一下自己的课设代码的,更具有针对性。