编译原理6语义和中间代码生成必威体育精装版.ppt

编译原理6语义和中间代码生成必威体育精装版.ppt

  1. 1、本文档共138页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Array A[l1:u1,l2:u2,…,ln:un] 相应的内情向量为 l1 u1 d1 l2 u2 d2 … ln un dn n C Type a Compart= a-C di = ui-Ii+1 n – 维数 填向量 申请空间 计算下标地址 A为确定数组 每维的上下限I,U都是常数,长度d,体积A都可以计算。编译时可填所有元素。 由于下标变量度地址的计算涉及的I,U都是已知量,所以运行时可以不要信息向量,理论上只要保留工作单元和一些常数就可以了。 A为可变数组 I,U是变量,体积要在运行时计算确定。 1. 编译时分配向量区,是空架子 2. 编译时产生计算I,U的指令组,填入向量区中 3. 根据I,U,申请内存区的指令 可变数组分配子程序 输入:维数n,界限序列l1,u1,l2,u2…ln,un 类型type以及内情向量表区地址 功能:建立内情向量并分配数组空间 算法 BEGIN i:=1; N:=1; C:=0; WHILE I ≤n DO BEGIN di := ui –li +1; N:= N * di; C := C * di + li; 把Ii,ui和di填入内情向量表区中;  i:= i+1 END; 申请N个单元的数组空间,令这片空间的首地址为a; 把n和C,以及type和a填入内情向量区中 1、对于某个压缩了的文法,当把每个文法符号和一组属性相关联,并把产生式附加以 的时候,就得到属性文法。 答案:语义规则 2、文法符号的属性有两种,一种称为 (1) ,另一种称为 (2) 。 答案: (1) 继承属性 (2) 综合属性 例题与习题解答 3、语法制导的编译程序能同时进行 (1) 分析和 (2) 分析。 答案: (1) 语法 (2) 语义 4、编译过程中,常见的中间语言形式有: (1) 、 (2) 、 (3) 、 (4) 。 答案: (1) 逆波兰表示 (2)三元式 (3) 四元式 (4) 树形表示 5、表达式-a+b*(-c+d)的逆波兰式是 。 a. ab+-cd+-* b. a-b+c-d+* c. a-b+cd-+* d. a-bc-d+*+ 答案: d 6、写出算术表达式A+B*(C-D)+E/(C-D)**N的三元式、四元式序列。 解:三元式序列: (1) (-,C,D) (5) (**,(4),N) (2) (*,B,(1)) (6) ( /,E,(5) ) (3) (+,A,(2)) (7) (+,(3),(6)) (4) (-,C,D) 四元式序列: (-,C,D,T1) (*,B,T1,T2) (+,A,T2,T3) (-,C,D,T4) (5) (**,T4,N,T5) (6) ( /,E,T5,T6 ) (7) (+,T3,T6,T7) 7、写出下列各式的逆波兰表示 (1) -a-(b*c/(c-d) + (-b)*a) (2) -A+B*C↑ (D/E)/F 8、写出表达式 A+B*(C-D)-E/F↑G 逆波兰表示, 三元组表示, 四元组表示。 解:(1) a-bc*cd-/b-a*+ - (2) A-BCDE/↑*F/+ 解:逆波兰表示:ABCD-*+EFG↑/- 三元组表示: ① (- , C, D ) ② (* , B, ① ) ③ (+ , A , ② ) ④ (↑ ,F, G ) ⑤ (/ , E, ④ ) ⑥ (- ,③,⑤) 四元式组: ①(- ,C,D,T1) ② (* ,B,T1,T2) ③ (+ ,A,T2,T3) ④ (↑,F,G,T4) ⑤ ( /,E,T4,T5) ⑥ (- ,T3,T5,T6) 9、写出条件语句 IF a0 THEN x:=x+1 ELSE x:=4*( x- 1) 四元式序列 解: ① (j,a ,0 ,③ ) ② (j,, , ⑥)  ③ (+,x ,1 ,T1) ④ (:= ,T1, , T2 ) ⑤ (j , , , ⑨ ) ⑥ (- ,x, 1,T3) ⑦ (*,4,T3, T4 ) ⑧ (:= ,T4 , , x) ⑨ 10、

您可能关注的文档

文档评论(0)

***** + 关注
实名认证
内容提供者

我是自由职业者,从事文档的创作工作。

1亿VIP精品文档

相关文档