编译原理语义3[控制语句翻译].pptVIP

  • 2
  • 0
  • 约小于1千字
  • 约 27页
  • 2017-04-23 发布于四川
  • 举报
编译原理语义3[控制语句翻译]

第 11 讲;第四章 语义分析和中间代码生成;第四章《语义分析和中间代码生成》 4.5 控制语句的翻译 条件语句if 条件循环语句while 多分支控制语句case(自学) 转移语句goto 重点掌握 通过代码结构图翻译if、while语句(重点) ;4.5 控制语句的翻译;4.5 控制语句的翻译;4.5 控制语句的翻译;为了在扫描条件语句过程中不失时机地处理和回填有关信息,可将G[S]改写为如下的G[S] : G[S]:?? (1) ?S→CS(1)      (2) ?C→if(E)      (3) ?S→TPS(2)      (4) ?TP→CS(1);else ; (1)无论是哪种if语句,首先用产生式(2) C→if(E)进行归约,这时E的真出口即为S(1)的第一个四元式;E的假出口地址则作为待填信息放在C的语义变量C.chain中等待回填; 所以: ; (2)不含else时,用(1) S→CS(1)进行规约,E的假出口是S(1)的出口,将C.chain和S(1).chain一起作为S的待填信息链用函数merge链在一起保留在S的语义值S.chain中: ; (3)用产生式(2) C→if(E)进行归约之后,如果:条件语句后有else,用(4)继续规约。 ; (4)最后用产生式(3

文档评论(0)

1亿VIP精品文档

相关文档