编译器前端实例代码分享--前端的理论和技术其实很重要

发布于 2022-09-29 16:34:03 字数 544 浏览 18 评论 0

很多牛人都说后端是大头,后端重要,代码生成和优化核心,那是他们的工作内容,他们说的都是对的。

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

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

过期情话 2022-10-06 16:34:03

东西太好了,顶一下。

肤浅与狂妄 2022-10-06 16:34:03

好东西,先收下,谢了。

尽揽少女心 2022-10-06 16:34:03

好东西。下。多谢楼主!

白日梦 2022-10-06 16:34:03

多谢了!!多谢了!!

葬シ愛 2022-10-06 16:34:03

好东西
一直对这个有啃刺猬的感觉,
有LZ的几个例子..........
谢谢,

转身以后 2022-10-06 16:34:03

恩 先下了回去看看学习一下。。

泼猴你往哪里跑 2022-10-06 16:34:03

好东东,收藏下!
能否告知资料的出处?呵呵、、

别忘他 2022-10-06 16:34:03

上学时挺爱学编译的,后来工作了,就没时间继续学习,惭愧ing。

嘴硬脾气大 2022-10-06 16:34:03

恩 先下了回去慢慢看

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文