上一篇:每天两小时学习编译原理——一个学期的第三天,希望能坚持长久✨
下一篇:每天两小时学习编译原理——一个学期的第五天,希望能坚持长久✨
往下接着走
那昨天由于太晚了,博客都没法就去睡觉了,所以在今天早上发了昨天的成果。
编译程序与程序设计环境
编译程序无疑是实现高级语言的一个最重要的工具。但是支持程序设计的人员在进行程序开发通常还需要一些其他的工具;如上图的编辑程序,连接程序,调试工具等。那这样一来,我们的编译程序与这些程序设计工具一起构成所谓的程序设计环境。当然,现在我们的程序设计都更加倾向于构造集成化的程序设计环境。
编译程序的生成
那我们的编译程序的生成可以采用三种方式,第一种就是以低级语言为工具来构造编译程序或是其中的核心部分。那每一个阶段都有每一个阶段的拥簇者,以机器语言和汇编语言为工具的人不在少数,但是时代在进步,科技在发展,我们的工具也在与时俱进,所以越来越多的人已经使用高级语言作为工具来编译程序了。
那不管怎么说,我们先来看看曾经的主流。
机器语言与汇编语言为工具
优点与缺点都很突出,那我们因为缺点难以维护啊,等各种问题的出现,导致人们对其失去了耐心,于是就有了下面的:
高级语言书写
那我们假设现在需要设计一个从S到T的编译程序,那我们用I语言来编写一个新的编译工具,那这个新的编译工具的作用就是去实现S源程序到T目标程序的翻译
。那这种关系我们就用一个这样一个扁平“T”形图来表示。