- 1、本文档共59页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4.1 将下述语句分别翻译成后缀式、三元式、三地址码和树。 (1)? a*–(b+c) (2) ?–(a+b)*(c+d)+(a+b–c) (3) ?if i10 then i:=10 else i:=0 解: (1) 后缀式:abc+–* ???三元式:① (+, b, c) ② (@, ①, ) ③ (*, a, ②) ???三地址码:T1:=b+c; T2:=-T1; T3:=a*T2; 树如题4.1图1所示。 (2) 后缀式:ab+–cd+*ab+c–+ 三元式:① (+, a, b) ⑤ (+, a, b) ② (–, ①, ) ⑥ (–, ⑤, c) ③ (+, c, d) ⑦ (+, ④, ⑥) ④ (*, ②, ③) 三地址码:T1:=a+b; T2:= –T1; T3:=c+d; T4:=T2*T3; T5:=a+b; T6:=T5–c; T7:=T4+T6; 树如题4.1图2所示。 题4.1图2 (3) 后缀式:i 10 i 10 := i 0 := if–then–else 或 ?i 10 P1 jez i 10 := P2 jump P1: i 0 := P2: 三元式:① (, i, 10) ④ (j, ⑥, _) ② (jez, ①, ⑤) ⑤ (:=, i, 0) ③ (:=, i, 10) 三地址码:① if i 10 goto ③ ④ goto ⑥ ② goto ⑤ ⑤ i:=0 ③ i:=10 树如题4.1图3所示。 题4.1图3 4.3 使用Pascal的作用域规则,确定下述程序中名字a和b的引用中属于哪个声明的作用域,并给出程序运行的结果。 program a (input, output); (1) procedure b (u, v, x, y :integer); (2) var a : record a, b : integer end; (3) ???b : record b, a : integer end; (4) begin (5) with a do begin a := u; b := v end; (6) with b do begin a := x; b := y end; (7) writeln(a.a, a.b, b.a, b.b) (8) end; (9) begin b(1, 2, 3, 4) end. (10) 解: 续表 4.4 假定下述程序分别采用值调用、引用调用、复写-恢复和换名调用,请给出它们的打印结果。 program main(input, output); procedure p(x, y, z); begin y:= y+1; z:= z+x end; begin a:=2; b:=3; p(a+b, a, a); print a end. 解: 引用调用和复写—恢复要求实参是左值,若实参为表达式,则可以有两种解决方案:① 语法错;② 为表达式分配一个临时变量t并将表达式的值放进t,然后将t看作实参,进行相应的参数传递。若按第二种解决方案,则 值调用结果:2; 引用调用结果:8; 复写-恢复调用结果:7; 换名调用结果:9。 4.5 对于例4.14中的Pascal程序,若以线性表方式组织符号表,请给出分析到第(14)行时符号表的状态。 解: 当程序分析到第(14)行时,符号表中可以被访问到的变量如下,它们是以栈的形式组织的,栈顶元素是partition中的j。程序中变量i出现在3个过程(readarray、quicksort、partition)中,当前状态已经出了readarray的作用域,因此readarray中的i不在当前符号表中,而在符号表中的两个i,仅有partition中的i
您可能关注的文档
- 边做边学——Photoshop+Illustrator综合实训教程 配套习题 作者 马丹 姚磊磊 6.doc
- 边做边学——Photoshop+Illustrator综合实训教程 配套习题 作者 马丹 姚磊磊 7.doc
- 边做边学——Photoshop+Illustrator综合实训教程 配套习题 作者 马丹 姚磊磊 8.doc
- 边做边学——Photoshop+Illustrator综合实训教程 配套习题 作者 马丹 姚磊磊 9.doc
- 边做边学——Photoshop+Illustrator综合实训教程 配套习题 作者 马丹 姚磊磊 10.doc
- 边做边学——Photoshop+Illustrator综合实训教程 配套习题 作者 马丹 姚磊磊 11.doc
- 边做边学——Premiere Pro CS3视频编辑案例教程 教学大纲作者 杨剑涛 23950 边做边学—Premiere Pro CS3视频编辑案例教程教学大纲.doc
- 边做边学——Premiere Pro CS3视频编辑案例教程 教学课件 作者 杨剑涛 01.ppt
- 边做边学——Premiere Pro CS3视频编辑案例教程 教学课件 作者 杨剑涛 02.ppt
- 边做边学——Premiere Pro CS3视频编辑案例教程 教学课件 作者 杨剑涛 03.ppt
文档评论(0)