描述一般的编译程序可分为哪些阶段,每个阶段的目的是什么

发布网友

我来回答

2个回答

热心网友

其目的是保证标识符和常数的正确使用,把必要的信息...综合部分 综合阶段必须根据符号表和中间语言程序产生...目标程序质量,也可以把一个逻辑步骤的工作分为几遍.

热心网友

1、一般的编译程序分为以下阶段:词法分析、语法分析、语义分析与中间代码生成、优化、目标代码生成。其间还有表格管理和出错处理。
词法分析是将输入的源程序转变成字符流,根据构词规则进行分析,最后输出单词符号,即单词种别码和单词自身的值;
语法分析是将单词符号,根据语法规则进行分析,最后输出语法单位。
语义分析与中间代码生成则是将语法单位,根据语义规则进行分析,输出中间代码形式(如四元式)。
优化则是为了节省空间和方便管理代码,把中间代码变换成依赖具体机器的目标代码。
目标代码生成则是将优化后的四元式进而生成目标程序。
2、补充:
中间代码形式有多种,如以下:
(1)后缀式(逆波兰表达式)
(2)图表示法:抽象语法树、DAG图
(3)三地址代码:三元式、四元式、间接三元式

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com