高级语言的编译程序是一种 系统软件。系统软件是支持计算机系统正常运行并实现用户操作的那部分软件,包括操作系统、数据库管理、存储器格式化、文件系统管理、用户身份验证、驱动管理、网络连接等方面的工具。编译程序(Compiler)是一种翻译程序,它的主要功能是把用高级程序设计语言编写的源程序翻译成等价的机器语言格式的目标程序。
编译程序的工作原理是:
1. 词法分析:将源程序分解成一系列的标记(token)。
2. 语法分析:根据语言的语法规则,将标记组织成语法结构(如抽象语法树)。
3. 语义分析:检查源程序在语法和语义上是否正确。
4. 中间代码生成:将源程序转换为中间表示形式,以便进一步处理。
5. 优化:对生成的中间代码进行优化,以提高程序的性能。
6. 目标代码生成:将中间代码转换为目标机器语言的代码。
7. 目标代码优化:对生成的目标代码进行优化,以提高程序的执行效率。
8. 目标代码链接:将多个目标代码文件链接成一个完整的可执行程序。
编译出的目标程序通常还要经历运行阶段,以便在运行程序的支持下运行,加工初始数据,算出所需的计算结果。
高级语言的编译程序不仅负责将源代码转换为机器代码,还负责进行代码优化,以提高程序的性能和效率。常见的编译程序有C编译器(如GCC)、Java编译器(如javac)、Python解释器(如CPython)等。