- 3
- 0
- 约1.39万字
- 约 77页
- 2017-06-07 发布于湖北
- 举报
嵌套过程语言的栈式实现 PASCAL 非局部名字的访问的实现 静态链和活动记录 嵌套层次显示表display 过程调用、过程进入、过程返回 参数个数 返回地址 形式单元 临时单元 内情向量 局部变量 老SP Display 表 全局Diaplay 1. 每个par Ti(i=1,2,…n)可直接翻译成如下指令: (i+4)[TOP]:= Ti (传值) (i+4)[TOP]:=addr(Ti ) (传地址) 过程调用、过程进入、过程返回 TOP? SP ? 调用过程的 活动记录 …… 形式单元 参数个数 返回地址 形式单元 临时单元 内情向量 局部变量 老SP Display 表 全局Diaplay 2. call P,n 被翻译成: 1[TOP]:=SP (保护现行SP) 3[TOP]:=SP+d (传送现行display地址) 4[TOP]:=n (传递参数个数) JSR (转子指令) 过程调用、过程进入、过程返回 TOP? SP ? 调用过程的 活动记录 …… 老SP 全局Diaplay 参数个数 3. 转进过程P后,首先定义新的SP和TOP,保存返回地址。 4. 根据全局display建立现行过程的display:从全局display表中自底向上地取l个单元,在添上进入P后新建立的SP值就构成了P的display。 参数个数 返回地址 形式单元 临时单元 内情向量 局部变量 老SP Display 表 全局Diaplay TOP? SP ? 调用过程的 活动记录 …… 返回地址 Display 表 5. 过程返回时,执行下述指令: TOP:=SP-1 SP:=0[SP] X:=2[TOP] UJ 0[X] 参数个数 返回地址 形式单元 临时单元 内情向量 局部变量 老SP Display 表 全局Diaplay TOP? SP ? 调用过程的 活动记录 …… TOP? SP ? 嵌套过程语言的栈式实现 PASCAL 非局部名字的访问的实现 静态链和活动记录 嵌套层次显示表display 过程调用、过程进入、过程返回 建立一个总的运行时的diaplay表(而不是每个过程的活动记录中都有一个),它记录正被调用执行的过程及其所有外层过程的活动记录的起始地址。通过这个diaplay访问数据。 在各过程活动记录之间保留一条静态链SL,它主要用于由层次大的过程调用层次小的过程后返回时,恢复调用前的display内容。(这时,调用返回后,执行一条UDIS指令) 三、上面两种方法的“折中”——PL编译程序(阅读资料) PL中每个过程的活动记录结构: 1) 简单局部变量 2) 连接数据 返回地址RA 动态链DL,指向过程调用者的活动记录起始地址 静态链SL, 指向过程的直接外层过程活动记录起始地址 静态链指针SL 形式单元 局部变量 数组 SP? 0 1 2 返回地址RA TOP? 动态链指针DL 3 program P; var x,y: integer; ... procedure P1; var i,j:integer; ... procedure P11(a,b:integer); ... begin ... end; begin ... call P11(i,j); ... end; procedure P2; var s,t:integer; ... procedure P21; begin ... end; begin ... call P1 ... end; begin ... call P2; ... end. 0 1 2 x 3 y 4 RA 5 SL(0) 6 DL(0) 7 s 8 t 9 0 1 5 2 主程序P?过程 P2?过程 P1?过程 P11 Display P的活动记录 P2的活动记录 RA 10 SL(0) 11 DL(5) 12 i 13 j 14 10 2 P1的活动记录 RA 15 SL(10) 16 DL(10) 17 a 18 b 19 P11的活动记录 15 3 0 1 2 x 3 y 4 RA 5 SL(0) 6 DL(0) 7 s 8 t
您可能关注的文档
- 第九篇 空气过滤.ppt
- 数据库性能优化要领.ppt
- 数据库选择题要领.doc
- 第九篇 条码应用系统设计.ppt
- 办公局域网方案-副本.doc
- 办公区域标识样本-副本.ppt
- 办公软件操作知识-副本.doc
- 办公软件简称-副本.doc
- 办公软件如何使用-副本.doc
- 第九篇 物流信息管理.ppt
- 广东省广州省实验中学教育集团2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州大学附属中学2025-2026学年八年级上学期奥班期中物理试题(解析版).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(含答案).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(解析版).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 2026《中国人寿上海分公司营销员培训体系优化研究》18000字.docx
- 《生物探究性实验教学》中小学教师资格模拟试题.docx
最近下载
- 《专业工程管理与实务》.pdf VIP
- 中国血栓性疾病防治指南(2025版).docx VIP
- 施工质量日志-.xls VIP
- 2025年国家公务员全国总工会面试题及答案.docx VIP
- 合肥市普通高中六校联盟2025-2026学年高三第一次语文教学质量监测+答案.docx VIP
- 局部晚期食管癌患者新辅助免疫治疗与常规新辅助治疗的比较:系统评价和meta分析.pdf
- 2025以骑手为代表的新就业群体研究报告:职业技能与跑单时长对收入的共同作用.pdf VIP
- 年产一亿片别嘌呤醇的车间工艺设计.doc VIP
- 商务型(带电梯、地下室、效果图)三层别墅设计图.pdf VIP
- 2026年详版个人信用报告征信报告最新Word可编辑模版样板doc文件.docx
原创力文档

文档评论(0)