编译过程
1.源程序:输入给编译器的其实就是字符串
2.词法分析:预处理:删除无用的空白字符、回车符及其他非实质性字符和注释
3.语法分析:根据语言的语法规则(由单词/符号构成语法成分的规则),将单词/符号序 列分解成各类语法成分,如表达式、语句、函数和程序等。语法树、中序遍历。
4.语义分析:语法正确的程序并不能保证语义一定正确!功能:检查源程序是否包含语义错误,并收集类型信息供后面的代码生成阶段使用。
5.中间代码生成:功能:依据语言的语义规则,生成与具体的机器无关的中间代码。常用形式有后缀式、三元式、四元式和树等。
例:编译过程中进行的语法分析主要是分析(48)。
A.源程序中的标识符是否合法 B.程序语句的含义是否合法
C.程序语句的结构是否合法 D.表达式的类型是否合法
选A。
例:在以阶段划分的编译过程中,判断程序语句的形式是否正确属于(22) 阶段的工作。
A.词法分析 B.语法分析 C.语义分析 D.代码生成
解析:语法更加看重单词,表达式等形式是否正确,而语义更加看重赋值语句类型,除数等意思上面的东西。