程序编译的主要作用是将 高级语言源程序翻译成目标程序,并翻译成等价的机器语言格式。这一过程是通过一个翻译程序来实现的,该程序采用生成性实现途径,将高级程序设计语言书写的源程序作为输入,而以汇编语言或机器语言表示的目标程序作为输出。
编译过程不仅涉及将源代码转换为机器代码,还包括一系列辅助功能,例如:
语法检查:
检查源程序是否符合语言的语法规则,并指出错误信息,帮助开发者发现和修正错误。
调试措施:
在编译出的目标程序中插入输出指令,以便在运行时输出程序动态执行情况的信息,帮助用户核实和验证源程序的正确性。
修改手段:
提供简便的修改源程序的方法,包括批量修改和现场修改。
覆盖处理:
优化大型程序,通过动态加载技术,提高程序运行效率。
目标程序优化:
对生成的目标程序进行优化,减少存储空间占用和运行时间。
不同语言合用:
支持高级语言与汇编语言或其他低级语言的混合编程,提高程序的执行效率。
人-机联系:
提供用户与编译程序之间的接口,使用户能够及时了解程序的内部工作情况,有效地监督和控制程序的运行。
通过这些功能,编译器不仅提高了程序的执行效率,还简化了开发过程,增强了代码的可移植性和安全性,是现代编程中不可或缺的工具。