四则运算编译器,虽然说功能很简单,只能编译四则运算表达式。但是编译原理前端部分几乎都有涉及,词法分析,语法分析,还有代码生成。
再复杂的编译器、再简单的编译器,功能上是差不多的,只是复杂的编译器实现上会更困难。
这个系列的文章是为了帮助你入门,在这个基础上再去看编译原理相关书籍,不至于打瞌睡。
如果你对编译原理很有兴趣,并且想更深一步的学习,在这里强烈推荐你看一本书——我心目中的神书——《计算机系统要素-从零开始构建现代计算机》。
这本书神在哪?
神在它通俗易懂,对小白足够友好,但又不过分肤浅。每一章都是理论与实践结合的经典,从计算机硬件知识到软件体系,再到编译原理和操作系统。
我在学习编译原理知识之前,看过好几本相关的书籍,无一例外,都是看得昏昏欲睡,不知所然。唯独这本书,越看越有味道,停不下来,最终我花了一个多月的时间看完了这本书并且完成了它所有的项目。
这一个多月的时间,让我有了一个质的蜕变,对于程序,不再懵懂无知。从写下一行代码开始,我就已经了解了这一个个字符最终会怎样在 CPU 中执行。
如果你在看完我的描述之后,对这本书有兴趣,欢迎你来我的项目看一下,这里有这本书的下载链接和我完成本项目的源码答案。
- 编译原理实战入门:用 JavaScript 写一个简单的四则运算编译器(一)词法分析
- 编译原理实战入门:用 JavaScript 写一个简单的四则运算编译器(二)语法分析
- 编译原理实战入门:用 JavaScript 写一个简单的四则运算编译器(三)模拟执行
- 编译原理实战入门:用 JavaScript 写一个简单的四则运算编译器(四)结语
- 完整源码