龙书第5,6章课后答案.doc

龙书第5,6章课后答案.doc

ID:51644370

大小:233.00 KB

页数:11页

时间:2020-03-14

龙书第5,6章课后答案.doc_第1页
龙书第5,6章课后答案.doc_第2页
龙书第5,6章课后答案.doc_第3页
龙书第5,6章课后答案.doc_第4页
龙书第5,6章课后答案.doc_第5页
资源描述:

《龙书第5,6章课后答案.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、5.1.11)、2)、L.val=4723)、5.2.31)、i)、不满足S属性的定义ii)、满足L属性的定义iii)、存在一致的求值过程2)、i)、不满足S属性的定义ii)、满足L属性的定义iii)、存在一致的求值过程3)、i)、满足S属性的定义ii)、满足L属性的定义iii)、存在一致的求值过程4)、i)、不满足S属性的定义ii)、不满足L属性的定义iii)、不存在一致的求值过程5.2.4Val为S或L对应的值;Len表示L对应的长度;产生式语义规则S->L1.L2S.val=L1.val+L2.va

2、l/2^L2.lenS->LS.val=L.valL->L1BL.val=L1.val*2+B.val;L.len=L1.len+1;L->BL.val=B.val;L.len=1;B->0B.val=0B->1B.val=15.3.11)、产生式语义规则E->E1+TIf((E1.type==int)and(T.type==int))E.type=int;ElseE.type=real;E->TE.type=T.typeT->num.numT.type=realT->numT.type=int2)、产生

3、式语义规则E->E1+TIf((E1.type==int)and(T.type==int))E.type=int;ElseE.type=real;If((E1.type==real)and(T.type==int))T.val=intToFloat(T.val);ElseIf((E1.type==int)and(T.type==real))E1.val=intToFloat(E1.val);E.val=E1.val

4、

5、T.val

6、

7、‘+’E->TE.type=T.type;E.val=T.val;T->n

8、um.numT.type=real;T.val=num.numreal.lexval;T->numT.type=int;T.val=intnum.lexval;5.4.41)、S->if(C)S1elseS2;CB.true=newlabel();CB.false=newlabel();S1.next=S2.next=S.next;S.code=BC.code

9、

10、label(BC.true)

11、

12、S1.code

13、

14、gen(‘goto’S.next)

15、

16、label(BC.false)

17、

18、S2.code2)、S

19、->doS1while(C)begin=newlabel();C.false=S.next;C.true=begin;S.code=label(begin)

20、

21、S1.code

22、

23、cC.true

24、

25、gen(‘goto’,begin);3)、??????S->’{’L’}’LàL1SLàεL.next=S.next;L1.next=newlabel();S.next=L.next;L.code=l1.code

26、

27、label(L1.next)

28、

29、S.code6.1.1+-*+-Xy6.1.21)、子表达式的值编

30、码如下:a两个字表达式的值编码:1b:1a+b:3a+b+(a+b):4都为3;2)、子表达式的值编码如下:a:1b:1a+b的值编码为3,a+b+a的值编码为4,a+b+a+b的值编码为5;3)、子表达式的值编码如下:a:1a+a:2a+a+a:3(a+a+a+a)的值编码为:46;(a+a+a+(a+a+a+a))的值编码为:57;a+a的值编码为3;a+a+(a+a+a+(a+a+a+a))的值编码为686.2.11)、抽象语法树+aminus+bc2)、四元式序列Oparg1arg2Result0

31、+bct11minust1t22+at2t33)、三元式序列Oparg1arg20+bC1minus(0)2+a(1)4)、间接三元式Oparg1arg20+bC1minus(0)2+a(1)Instruction0(0)1(1)2(2)6.3.1floatx;x类型为浮点型;相对地址为0;record{floatx;floaty;}p;p为记录类型,x和y为浮点型;x相对地址为0;y相对地址为8;record{inttag;floatx;floaty;}q;q为记录类型,tag为整型,x和y为浮点型;t

32、ag的相对地址为0;x的相对地址为4;y的相对地址为12;6.4.31)、t1=i*4;t2=a[t1];t3=j*4;t4=b[t3];t5=t2+t4;x=t5;2)、注:三地址码中不支持连乘Tt01=i*n*4;t1=t0*4;t2=j*4;t3=t1+t2;t4=a[t3];t5=i*qt51=t5t5=i*q*4;t6=j*4;t7=t51+t6;t8=b[t7];t9=t7+t8;x=t9;3)、t0=i*qt1=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。