
编译程序面向对象构造.ppt
27页1第十五章 编译程序的面向对象构造第十五章 编译程序的面向对象构造v第一节第一节 编译程序面向对象构造的基本概念编译程序面向对象构造的基本概念v第二节第二节 构造编译程序的面向对象类库构造编译程序的面向对象类库v第三节第三节 面向对象编译程序的符号表构造面向对象编译程序的符号表构造2§ 编译程序面向对象构造的基本概念编译程序面向对象构造的基本概念v自底向上分析(移进-归约分析):对输入符号串自自底向上分析(移进-归约分析):对输入符号串自 左向右进行扫描,并将输入符逐个移入一个后进先出 左向右进行扫描,并将输入符逐个移入一个后进先出 栈中,边移入边分析,一旦栈顶符号串形成某个句型 栈中,边移入边分析,一旦栈顶符号串形成某个句型 的句柄或可归约串时,就用该产生式的左部非代替相 的句柄或可归约串时,就用该产生式的左部非代替相 应右部的文法符号串,这称为一步归约重复这一过 应右部的文法符号串,这称为一步归约重复这一过 程直到归约到栈中只剩文法的开始符号时则为分析成 程直到归约到栈中只剩文法的开始符号时则为分析成 功,也就确认输入串是文法的句子 功,也就确认输入串是文法的句子第十五章 编译程序的面向对象构造第十五章 编译程序的面向对象构造3456789101112131415161718§ 构造编译程序的面向对象类库 构造编译程序的面向对象类库v自底向上分析(移进-归约分析):对输入符号串自自底向上分析(移进-归约分析):对输入符号串自 左向右进行扫描,并将输入符逐个移入一个后进先出 左向右进行扫描,并将输入符逐个移入一个后进先出 栈中,边移入边分析,一旦栈顶符号串形成某个句型 栈中,边移入边分析,一旦栈顶符号串形成某个句型 的句柄或可归约串时,就用该产生式的左部非代替相 的句柄或可归约串时,就用该产生式的左部非代替相 应右部的文法符号串,这称为一步归约。
重复这一过 应右部的文法符号串,这称为一步归约重复这一过 程直到归约到栈中只剩文法的开始符号时则为分析成 程直到归约到栈中只剩文法的开始符号时则为分析成 功,也就确认输入串是文法的句子 功,也就确认输入串是文法的句子19202122232425§ 构造编译程序的面向对象类库 构造编译程序的面向对象类库v自底向上分析(移进-归约分析):对输入符号串自自底向上分析(移进-归约分析):对输入符号串自 左向右进行扫描,并将输入符逐个移入一个后进先出 左向右进行扫描,并将输入符逐个移入一个后进先出 栈中,边移入边分析,一旦栈顶符号串形成某个句型 栈中,边移入边分析,一旦栈顶符号串形成某个句型 的句柄或可归约串时,就用该产生式的左部非代替相 的句柄或可归约串时,就用该产生式的左部非代替相 应右部的文法符号串,这称为一步归约重复这一过 应右部的文法符号串,这称为一步归约重复这一过 程直到归约到栈中只剩文法的开始符号时则为分析成 程直到归约到栈中只剩文法的开始符号时则为分析成 功,也就确认输入串是文法的句子 功,也就确认输入串是文法的句子2627。












