首页 > 代码库 > 编译原理:引论
编译原理:引论
阅读的教材为:编译原理(张素琴等编著,清华大学出版社)
编译过程就是将高级语言翻译为低级语言
编译过程分为前段(front end)和后端(back end)
阅读过程中遇到的疑问是:解释程序和编译程序的区别?
1、编译程序直接生成目标代码,解释程序在运行时才将中间代码编译成目标代码。故执行效率低
2、编译过程生成的目标代码,逆翻译难度非常大,基本不可能。解释程序只是将程序生成为中间代码,易读,相当开放源码。故无保密性
3、编译过程从中间代码到目标代码需要考虑到不同系统,相反解释程序只是翻译到中间代码,执行过程中可根据不同系统做后续编译。故跨平台
4、为了便于用户调试和修改程序,又能保证程序高效运行,很多程序设计语言配置两个加工系统,一个用于调试,一个用于有效地运行。故调试效率高
联想到,python为什么效率相对低,是不是因为解释程序,然而并不是?
引:像Python这样就不好分了,可以直接解释源代码运行,也可以编译为虚拟机指令然后再运行。
引:https://www.zhihu.com/question/21486706 余天升 回答
编译原理:引论
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。