compilers

0.编译器的整体构架
编译器: 词法分析->语法分析->中间代码生成->(代码优化)->目标代码生成的流程。
其中词法分析严重影响着编译器的性能,对词法分析的优化很必要。提高词法分析速度的一个主要途径是使用高效的缓冲管理机制。另一个主要的方面就是实现优化的匹配控制流程。 对于词法分析和语法分析有很多的代码自动生成工具,使用这些工具生成的代码据说速度也很快,一般初学者写出的词法分析和语法分析模块的速度很难超过工具生成的代码。据说GCC的词法分析和语法分析便是使用工具自动生成的。但也有不少牛人嫌工具生成的代码太大太慢,他们喜欢自己手动书写。 语法分析的结果通常是一棵语法树,语法树也是一种中间代码的形式,不知道有没有编译器直接使用语法树作为中间代码。中间代码的形式通常应该接近汇编,既:操作符 操作数1, 操作数2 的形式。很象intel汇编中的mov ex, 4。

1.推荐参考书
1.龙书(Dragon book)
书名是Compilers: Principles,Techniques,and Tools
作者是:Alfred V.Aho,Ravi Sethi,Jeffrey D.Ullman
2.鲸书(Whale book)
作者是:Steven S.Muchnick 也就是高级编译原理
3.虎书(Tiger book)
作者是:Andrew W.Appel,with Jens Palsberg 这本书是3本书中最薄的一本,也是最最牛的一本!

2.关于编译器的图书资料汇总
http://www.360doc.com/content/15/0905/12/19474439_497013325.shtml

两个新闻组:
http://groups.google.com/group/comp.compilers?hl=en
http://compilers.iecc.com/index.phtml

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值