翻了这么多本书,这是我看过的唯一一本讲具体怎么构建一个编译器的书。同时这本书所构建的编译器就像作者说的那样,简单但是并不平庸,拥有很多挺先进的特性。也能算是一个优化编译器。但是要跟着这本书做下来还是有一定难度的,需要扎实的C语言功底。
《编译原理与实践》并没有实现TINY C,只是最后提到了一下。书中实现的是另一个更简单的几乎没什么意义的TINY。不过这本书前端部分讲得非常详细,很适合初学者
ps,补充一下,这本书还是很好的,有虎书(应该没记错-_-||)的称号,只是他确实不适合初学者。
这本书讲的太简略了,绝对不适合初学者。 讲具体构建一个编译器的书很多啊,强烈推荐我们用的教材《编译原理与实践》 ,书中完成了一个4000多行的类C教学编译器TINY C(麻雀虽小五脏俱全)。Kenneth C. Louden著,机械工业出版社出版。
寄存器没有分配 ----------------------- 现在可以编译了吗,生成的代码可以跑吗? 使用VS2005的C++版本作为开发环境吗? 我看这本书看得稀里糊涂的,呵呵,太笨了! 你也使用LR语法分析吗?用工具Lex这些工具了吗? 呵呵,我看代码里面还有python的代码哦.呵呵 谢谢,楼主是强人,呵呵
http://code.google.com/p/bellman/ 我写的实现,现在还差最后一步寄存器分配没有做。汇编使用nasm,语法则是类C语法(因为我实在是不习惯tiger语言的语法,而完全按照c语法来实现有的地方很麻烦)
谁实现了这个C版本的编译器?有代码吗? 分享一下,Java的编译器代码也行. 这本书只有头文件*.h.爷爷的. 没有具体的实现,郁闷.