表达式中括号不匹配错误可在编译程序______阶段检查出来。A.词法分析B.语法分析C.语义分析D.代码

计算机 词法,编译程序,语义 已帮助 人

表达式中括号不匹配错误可在编译程序______阶段检查出来。

A.词法分析

B.语法分析

C.语义分析

D.代码优化

热搜:关于内存与硬盘的区别,错误的说法是______。

答案解析

难度★★☆ 搜索
  • 正确答案:B
    解析:编译程序是要把高级语言书写的源程序翻译成与之等价的目标程序,其工作过程可分为6个阶段:
    词法分析:对源程序从前到后逐个字符进行扫描,从中识别出一个个“单词”符号。
    语法分析:在词法分析的基础上,根据语言的语法规则将单词符号序列分解成各类语法单元。通过语法分析,确定整个输入串是否构成一个语法上正确的程序。
    语义分析:主要检查源程序是否存在语义错误,进行类型分析和检查。数据类型一般包括类型的载体及其上的运算两方面的内容。只有语法和语义都正确的源程序才能翻译成正确的目标代码。
    中间代码生成:根据语义分析的输出生成中间代码,这是一种简单且含义明确的记号系统,与具体的机器无关。
    代码优化:生成的中间代码往往在时间和空间上有很大的浪费,对其优化,可生成高效的目标代码。优化过程可在中间代码生成阶段进行,也可以在目标代码生成阶段进行。
    目标代码生成:把中间代码变换成特定机器上的绝对指令代码、可重定位的指令代码或汇编代码。