编译器是如何工作的?

发布于 2022-09-12 03:16:23 字数 285 浏览 20 评论 0

编译和运行期的加载是两回事:加载是加载二进制格式到不同的内存里。
编译器简单来说就是读入字节流处理后输出字节流的程序。
从读入字节流变换到输出字节流的过程,这块的过程是什么知识点?
在编译原理书中只能看到编译器程序工作后的结果,将输入的高级语言变成相应的输出。
但是老是控制不住去幻想:编译器程序工作过程中,会不会用到cpu和内存的?操纵cpu和内存这些硬件需要01机器码,源代码需要经过编译器或者解释器最终得到机器码才能在硬件上工作。但是编译器本身是一个由算法和数据结构组成的程序,它怎么实现翻译高级语言的动作呢?

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

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

发布评论

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

评论(1

凉城凉梦凉人心 2022-09-19 03:16:23

编译器分前端后端, 你说的这些是后端干的事:目标代码生成和优化
比如LLVM就擅长干这事

编译原理的书讲后端的很少,但是概念多少讲到了

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