设计一个编译器的基本思路

1.明确目标语言的语法

2.根据语法写出相应的词法分析程序,也可以用工具 LEX 生成

3.消除左递归文法,编写LL0下推自动机

4.根据自动机产生的语法树生成目标代码

5.目标代码优化


其中:

词法分析使用有状态自动机,遍历状态矩阵


语法分析使用LL0下推自动机,具体我也不懂


语法树完全不懂……但是貌似生成的时候要参考符号的优先级


目标代码就是按照语法树下推就行了

阅读更多
个人分类: 每日关注
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭