早教吧作业答案频道 -->其他-->
编译为什么要分成不同的阶段?请解释编译的几个不同阶段?
题目详情
编译为什么要分成不同的阶段?请解释编译的几个不同阶段?
▼优质解答
答案和解析
编译过程分为分析和综合两个部分,并进一步划分为词法分析、语法分析、 语义分析、 代码优化、存储分配和代码生成等六个相继的逻辑步骤。
这六个步骤只表示编译程序各部分之间的逻辑联系,而不是时间关系。编译过程既可以按照这六个逻辑步骤顺序地执行,也可以按照平行互锁方式去执行。在确定编译程序的具体结构时,常常分若干遍实现。对于源程序或中间语言程序,从头到尾扫视一次并实现所规定的工作称作一遍。每一遍可以完成一个或相连几个逻辑步骤的工作。例如,可以把词法分析作为第一遍;语法分析和语义分析作为第二遍;代码优化和存储分配作为第三遍;代码生成作为第四遍。反之,为了适应较小的存储空间或提高目标程序质量,也可以把一个逻辑步骤的工作分为几遍去执行。例如,代码优化可划分为代码优化准备工作和实际代码优化两遍进行。
这六个步骤只表示编译程序各部分之间的逻辑联系,而不是时间关系。编译过程既可以按照这六个逻辑步骤顺序地执行,也可以按照平行互锁方式去执行。在确定编译程序的具体结构时,常常分若干遍实现。对于源程序或中间语言程序,从头到尾扫视一次并实现所规定的工作称作一遍。每一遍可以完成一个或相连几个逻辑步骤的工作。例如,可以把词法分析作为第一遍;语法分析和语义分析作为第二遍;代码优化和存储分配作为第三遍;代码生成作为第四遍。反之,为了适应较小的存储空间或提高目标程序质量,也可以把一个逻辑步骤的工作分为几遍去执行。例如,代码优化可划分为代码优化准备工作和实际代码优化两遍进行。
看了编译为什么要分成不同的阶段?请...的网友还看了以下:
质量分数不同的硫酸溶液...质量分数不同的硫酸溶液,以相同质量混合时,所得溶液密度为d1,以相同体 2020-05-15 …
(标语)请为不冲厕所的人写条标语.RT希望有创意一点! 2020-06-23 …
求天净沙梅梢月赏析请为我分析一下这首曲里面月亮这个意向以及在其中寄托的情感 2020-06-27 …
请问不分昼夜是成语吗 2020-06-27 …
下面“请”有不同的用法,分类正确的一项是[]①寡人窃闻赵王好音,请奏瑟②三十日不还,则请立太子为王 2020-07-01 …
下面“请”有不同的用下面“请”有不同的用法,分类正确的一项是[]①寡人窃闻赵王好音,请奏瑟②三十日 2020-07-01 …
探索:能被分成两个等腰三角形的条件(1)已知∠A=60,∠C=20,请把△ABC分为两个等腰三角形 2020-08-03 …
英语请假条下午要做试验,不能上外教的口语课,但是不会写请假条,请高手帮下忙,请假条请要充分表达我不能 2020-12-11 …
在两枚1分,两枚2分,和三枚5分的硬币中,随意取出两枚,则取出的币值恰好是七分的概率是?我算的是2/ 2020-12-31 …
请将下列词语的正确解释填在()里。A、背着B、靠;依仗C、享有D、败;输E、遭受F、担任负荆请罪() 2021-01-14 …