- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第六章 运行时的存储环境;运行时的存储空间结构;运行时静态区的分配;栈区的存储分配;堆区的存储分配;运行时的过程活动记录与栈区的组织结构;AR的结构:;例:
Procedure p(i:integer);
Var y:real; a:array[1..10]of interger;
Begin y:=a[i]*25 end
则过程p被调用时的活动记录AR结构如下:;动态链; 调用过程Q时:
? 新产生活动记录NewAR
? 填写NewAR的内容:
动态链指针:=sp;
填写返回地址、层数、大小和机器状态
? sp:=;
? 转向Q子程序。
退出过程Q时:
? (R1,R2,...,Rn) := ;
? Value:=;
? sp:=;.
? 按原返回;;活跃活动记录(LAR);运行时的变量访问; 若(M,…,P,Q)?CallChain(Q),且Q的层数为N,
则有 DeclaChain(Q)= DeclaChain(P)N ? Q
设[AR(M),…,AR(Pi),AR(Qj)]?DynamicChain(Q),且Q
的层数为N,则有:
VarVisitEnv(AR(Qj))=VarVisitEnv(AR(Pi))N ?AR(Qj); Display表方法
全局表法
局部表法
静态链方法
寄存器方法 ;局部Display表方法;Display表的求法;例:有过程M,Q,R,S,其中level(M)=0;level(Q)=1;level(R)=1;level(S)=2,各AR的Display表分别如下:;局部Display表时变量的访问;静态链方法;使用静态链时变量的访问;全局Display表和寄存器方法;全局Display表方法的实现
您可能关注的文档
- 《比较文学概论》马工程 第5章.pptx
- 《比较文学概论》马工程 第8章.pptx
- 《编译技术》张莉 第二部分-提高篇 电子教案-第11章-词法分析程序的自动生成技术.ppt
- 《编译技术》张莉 第二部分-提高篇 电子教案-第12章-语法分析 (二).ppt
- 《编译技术》张莉 第二部分-提高篇 电子教案-第14章-代码优化.ppt
- 《编译技术》张莉 第二部分-提高篇 电子教案-第15章-目标代码生成及优化.ppt
- 《编译技术》张莉 第二部分-提高篇 电子教案-第16章-编译程序生成方法和工具.ppt
- 《编译技术》张莉 第一部分-基础篇 电子教案-第1章-编译概述.ppt
- 《编译技术》张莉 第一部分-基础篇 电子教案-第5章-符号表管理技术.ppt
- 《编译技术》张莉 第一部分-基础篇 电子教案-第7章-源程序的中间形式.ppt
文档评论(0)