构建编译器步骤

Building a compiler steps

本文关键字:编译器 构建      更新时间:2023-10-16

我考虑构建自己的编译器已经有一段时间了,几天前我终于开始了

  • 从我自己的文件中解析代码。(带有用c++制作的.exe文件)
  • 创建程序集代码
  • 创建包含这些程序集代码的文件
  • 编译该程序集文件(使用vbs脚本完成)
  • 链接.obj文件
  • 我们有我们的.exe文件

现在我很难找到解析代码的最佳方法。我还没有真正做到这一点,但我会把我的想法放在这里。

  • 查找所有变量并声明它们。变量前面将加一个"var"(目前)。未初始化的变量将被放入.data?节,并在.data节中初始化
  • 找到主要程序并开始执行功能和操作

现在我只是想知道是否有人能改进我的想法。或者,如果有人有更好的想法来制作某种编译器和您自己的编程语言。

给自己一本a.V.Aho,M.S.Lam,R.Sethi,J.D.Ullman:Compilers:Principles,Techniques,and Tools并开始学习

这本书涵盖了必要的理论背景,特别是:

  • 上下文无关语法
  • 递归下降、LL、LR解析
  • 符号处理
  • 中级代表