我正在尝试构建一个c ++编译器。我在Visual Studio上使用lex和Bison构建了语法和语义规则,因此下一步是构建代码生成。是否有任何在线参考可以帮助我构建代码生成? 任何帮助表示赞赏。
答案 0 :(得分:0)
我在不久前写过关于编写编译器的各个方面的博客:
http://orangejuiceliberationfront.com/how-to-write-a-compiler/
我还写过如何在RAM中布置对象:
http://orangejuiceliberationfront.com/runtime-time/
这是你要找的那种信息吗?我想我的博客上的整个语言设计部分(http://orangejuiceliberationfront.com/category/language-design/)会对这种情况感兴趣。它是以MacOS为中心的,但无论您使用什么平台,生成英特尔机器代码等的一般基础都是相同的。
当然,如何编写 C ++ 编译器的唯一硬性规范是ISO C ++标准规范,您可以从ISO网站获取疯狂的金额。但是,该规范当然假定您知道如何编写编译器。