免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 9014 | 回复: 15
打印 上一主题 下一主题

编译器前端实例代码分享--前端的理论和技术其实很重要 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-06-30 12:30 |只看该作者 |倒序浏览
很多牛人都说后端是大头,后端重要,代码生成和优化核心,那是他们的工作内容,他们说的都是对的。

我对编译很感冒,有些业余的看法。
我觉得中间代码的设计很重要,中间代码设计的好代码生成和优化都好做,而且可以也应该有多层中间表示,经过层层优化和转换,可以使最后的代码生成变的简单。
形式语言与自动机理论相当完善,编译器实践和计算机科学的实践都是以此为理论指导的。因为很他成熟了,很多人认为编译器的前端构造很简单,怎么说还有Lex和Yacc呢。
设计几层优雅的中间代码,从上一层中间表示转换到下一层中间表示的工作其实是和从源代码转换到第一层中间表示所需要做的工作是一样的。也就是,所谓的前端。
层层表示都由前端技术来运作,最后的代码生成可不可以认为是一种表示向另一种表示进行转换呢?
我觉得后端的理论跟前端很像。
中间表示的设计没有完全权衡利弊的必要,可以多来几层,现代机器很强的,更好的抽象我觉得是更好的选择。
符号表却是贯穿始终的,有必要的话也可以有多个,以用于不同的中间表示阶段。

下面附上几个前端学习的代码实例,很简单,几分钟就能看明白,希望大家喜欢。

lc.zip

18.14 KB, 下载次数: 869

c.zip

4.34 KB, 下载次数: 696

cpp.zip

62.99 KB, 下载次数: 581

pascal.zip

28.99 KB, 下载次数: 408

java.zip

5.19 KB, 下载次数: 447

fortran.zip

11.76 KB, 下载次数: 357

sql.zip

13.71 KB, 下载次数: 420

评分

参与人数 1可用积分 +15 收起 理由
mik + 15 好东东

查看全部评分

论坛徽章:
0
2 [报告]
发表于 2007-06-30 15:31 |只看该作者
东西太好了,顶一下。

论坛徽章:
0
3 [报告]
发表于 2007-06-30 15:48 |只看该作者
好东西,先收下,谢了。

论坛徽章:
0
4 [报告]
发表于 2007-07-27 09:44 |只看该作者
好东西。下。多谢楼主!

论坛徽章:
0
5 [报告]
发表于 2007-08-17 09:10 |只看该作者
多谢了!!多谢了!!

论坛徽章:
0
6 [报告]
发表于 2007-08-29 22:48 |只看该作者
好东西
一直对这个有啃刺猬的感觉,
有LZ的几个例子..........
谢谢,

论坛徽章:
0
7 [报告]
发表于 2007-09-06 15:34 |只看该作者
恩 先下了回去看看学习一下。。

论坛徽章:
0
8 [报告]
发表于 2007-09-12 13:16 |只看该作者
好东东,收藏下!
能否告知资料的出处?呵呵、、

论坛徽章:
0
9 [报告]
发表于 2007-09-13 00:52 |只看该作者
上学时挺爱学编译的,后来工作了,就没时间继续学习,惭愧ing。

论坛徽章:
0
10 [报告]
发表于 2007-09-22 13:20 |只看该作者
恩 先下了回去慢慢看
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP