1、“.....每项长度为真值假值在布尔表达式中保存有关布尔变量的真假值指向的指针匹配表的结构,用来与输入缓冲区中的单词进行匹配,匹配表初始化,大小为存放名字存放名字所对应的值,词法分析结果缓冲区,读取二元式的当前字符,当前表达式中的字符,非终结符,算术或布尔表达式加工处理使用的符号栈......”。
2、“.....为结束符源程序行数记数为赋值语句为语句为语句临时变量计数器总是指向下个将要形成的四元式地址,每次执行时......”。
3、“.....即记录嵌套中每层的布尔表达式的首地址记录语句嵌套层次的数组,即记录每层之前的四元式地址数组指针数组指针五编译程序运行测试测试得源程序如下经编译程序运行后得到的输出结果如下词法分析得出的相应的名字的号码和他的值列举程序中所有的变量状态栈的移进归约过程最后产生的四元式中间代码布尔表达式的分析表设计如下过程略,......”。
4、“.....则在调用与该状态对应的产生式进行归约的同时,调用相应的语义子程序进行有关的翻译工作。现在对分析器的分析栈加以扩充,使得每个文法符号之后都跟着它的语义值。为了清晰起见,我们把这个栈的每项看成由三部分组成状态,文法符号和语义值。编译程序实现算术表达式布尔表达式及程序语句的语义加工时,都是按这种状态栈加工方式进行的。例如的分析过程序号真的代码假出口的四元式串。的真出口只有在往回扫描到时才能知道......”。
5、“.....这就是说,必须把的值传下去,以便到达相应的时才进行回填。另外,当语句执行完时意味着整个语句也已执行完毕因此,在的编码之后应产生条无条件转移指令。这条转移指令将导致程序控制离开整个语句。但是,在完成的翻译之前,这条无条件转移指令的转移目标是不知道的。甚至,在翻译完之后,这条转移指令的转移目标仍无法确定。这种情形是由于语句的嵌套性所引起的......”。
6、“.....这也就是说,转移目标的确定和语句所处的环境密切相关。条件循环语句条件循环语句通常被翻译成图的代码结构。布尔式的真出口出向代码段的第个四元式。紧接代码段之后应产生条转向测试的无条件转移指令。的假出口将导致程序控制离开整个语句。的假出口目标即使在整个语句翻译完之后也未必明确。例如这种情况仍是由于语句的嵌套性引起的。所以,我们只好把它作为语句的语义值暂留下来......”。
7、“.....语法翻译实现方法将上述语法翻译付诸实现过程中,我们仅保留了算术表达式和布尔表达式翻译的文法和语义动作面对程序语句的翻译,由于改造后含有较多的非终结符且语义动作又相对简单,故仍恢复为改造之前的程序语句文法。由于总体上构造个分析表来实现语法分析及语义加工将使得所构造的分析表过大,所以将其分为下面三部分处理对算术表达式单独处理,即为算术表达式构造个分析表,并将赋值语句与算术表达式归为类处理......”。
8、“.....对布尔表达式也单独处理,并为其构造个分析表,经分析表处理后的布尔表达式看作为程序语句文法中的个终结符。程序语句文法此时变为此时为程序语句构造相应的分析表就简单多了。前面的程序语句文法中所添加的非终结符是为了能及时回填有关四元式转移目标而引入的......”。
9、“.....也即,对程序语句的翻译来说在处理完布尔表达式后,回填或语句的真值链在归约完每个语句之后检查符号栈,看在之前的文法符号是否或,若是则回填假值链假值入口为语句所对应的四元式序列之后对语句,此时已在该序列之在分析过程中,第步操作后的状态栈为......”。
1、手机端页面文档仅支持阅读 15 页,超过 15 页的文档需使用电脑才能全文阅读。
2、下载的内容跟在线预览是一致的,下载后除PDF外均可任意编辑、修改。
3、所有文档均不包含其他附件,文中所提的附件、附录,在线看不到的下载也不会有。