gpt4 book ai didi

architecture - 编译器——前端后端

转载 作者:行者123 更新时间:2023-12-03 09:14:50 28 4
gpt4 key购买 nike

我了解编译器的前端和后端结构。但是,我不确定为什么编译器经常分为前端和后端。我相信有很多原因,你能给我几个吗?因为,大多数书籍/网站会告诉您它们是什么,但无法告诉您原因!

谢谢你。

最佳答案

前端处理语言本身:扫描、解析、解析树。后端处理目标系统:目标代码格式、机器代码本身……这两件事彼此之间没有太多关系,对于可移植编译器来说,非常希望使用相同的前端有多个后端,每个目标一个。

你可以更进一步,如 gcc确实如此,并且具有独立于语言的前端/后端界面,因此您可以使用具有相同后端的不同语言前端。在过去,这被称为 MxN 问题:您不想在拥有 M 种语言和 N 个目标系统的情况下编写 MxN 编译器。这个想法是只需要编写 M+N 个编译器。

关于architecture - 编译器——前端后端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9765414/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com