问题 单项选择题

所有编译程序的语法分析器都使用一个(),以支持语法分析的顺利进行。

A.栈

B.队

C.树

D.图

答案

参考答案:A

解析:

描述程序语言的语法是上下文无关语法,由它产生程序语言是上下文无关语言。这种语言与下推自动机等价,即每一个程序语言的语法,都可以用一个下推自动机来识别。下推自动机中的下推指的就是一个栈,一个下推自动机的模型如下图所示。

[*]

一个语法分析器和一个下推自动机一样也由4部分构成:一个输入,一个输出,一个栈和一个控制器。对于某一个程序语言,可以根据不同的语法分析方法构造出不同的控制器,由控制器控制分析过程中的输入、输出和进栈操作。

单项选择题