编译原理运行时存储空间组织陈火旺版

编译原理运行时存储空间组织陈火旺版

ID:44991991

大小:201.00 KB

页数:17页

时间:2019-11-06

编译原理运行时存储空间组织陈火旺版_第1页
编译原理运行时存储空间组织陈火旺版_第2页
编译原理运行时存储空间组织陈火旺版_第3页
编译原理运行时存储空间组织陈火旺版_第4页
编译原理运行时存储空间组织陈火旺版_第5页
资源描述:

《编译原理运行时存储空间组织陈火旺版》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第九章运行时存储空间组织9.1目标程序运行时的活动9.2运行时存储器的划分9.3静态存储分配9.4简单的栈式存储分配9.5嵌套过程语句的栈式实现9.6堆式动态存储分配复习题9.1目标程序运行时的活动一、过程的活动一个过程的活动指的是该过程的一次执行。即每次执行一个过程体产生该过程体的一个活动。活动的生存期:从执行某过程体第一步操作到最后一步操作之间的操作序,包括执行该过程体时调用其它过程花费的时间。二、参数传递1.参数形式参数(形参,哑元)实在参数(实参)2.参数传递途径传地址传值传名得结果1.传地址把实参地址传给相应形参,在过程段中每个形参都有一个相应单元,称为形式单元,用来存放实

2、参地址,过程体对形参的任何引用或赋值都被处理成对形式单元的间接访问。2.传值调用段把实参值计算出来并存放在一个被调用段可以拿得到的地方,被调用段开始工作时,首先把这些值抄进自己的形式单元之中,然后就好象使用局部名一样使用这些形式单元,若实参不为指针,在这种情况下被调用段无法改变实参的值。3.得结果每个形参对应有两个单元,第一个单元存放实参地址,第二个单元存放实参的值,在过程体中对形参的任何引用或赋值都看成是对它的第二个单元的直接访问,但在过程工作完成返回前必须把第二个单元的内容存放到第一个单元所指的那个实参单元中4.传名(替换规则)过程调用的作用相当于把被调用段的过程体抄到调用出现的

3、位置,把其中任一出现的形式参数都替换成相应的实在参数,为了表现实在参数的整体性,必需时在替换前先把它用括号括起来。实现方法:在进入被调用段之前不对实在参数预先进行计值,而是让过程体中每当使用到相应形参时才逐次对它实行计值。通常把实参处理成一个子程序,每当过程体中使用到相应形参就调用这个子程序。例1.(清华大学考研试题)在下面的函数P中,参数x是通过地址传递的,参数y通过值传递FUNCTIONP(VARx:integer;y:integer):integer;BEGINK:=3;L:=5;P:=x+yEND;若P由下列程序调用K:=1;L:=1;Z:=P(K,L)则问Z的值是什么,这两

4、种参数传递机制如何实现?解:当传值时,在调用段对参数进行的修改在主程序段中不对参数实际值造成影响,而传地址时,在调用段对参数的修改就实际改变了参数值x传地址y传值Z:=P(K,L)K地址传到调用段。K:=3即x:=3y只是L的值,过程体中L:=5不改变y的值故此时x=3,y仍为1。所以P:=x+y,即为P:=3+1=4。故返回P:=x+y,即Z=4.例2.(上海交通大学)假定下列程序在语法上是正确的。Programtext(input,output);Vari,j:integerprocedurecal(x,y:integer);beginy:=y**2;x:=x-y;y:=y-x;

5、end;{cal}begin{main}i:=2;j:=3;cal(i,j);writeln(j:1)end{main}采用哪种参数传递方式使上述程序打印16,采用哪种方式使程序结果为3传地址、传名传值例3.对于下面的程序,若参数传递办法分别为传名,传地址,传值,得结果,那么程序执行时所输出的a分别是多少?ProcedureP(x,y,z);Beginy:=y+2;z:=z+x;end;begina:=4;b:=5;P(a+b,a,a);PrintaEnd;解:程序执行时所输出的a对应传名、传地址、传值、得结果分别是17,15,4,13。分析:传名:a:=a+2=6a:=a+a+b=

6、6+6+5=17传地址:a:=a+2=6a:=9+6=15传值:a=4得结果:调用者数据区:被调用者add_a4add_xTTadd_b5x_val99(a+b)临时单元T9add_yadd_aadd_ay_val4y:=y+26add_zadd_aadd_az_val44z:=z+x=9+4=139.2运行时存储器的划分一.运行时存储器的划分二.活动记录活动记录:为了管理过程在一次执行中所需要的信息,使用一个连续的存储块。这个连续的存储块称为活动记录。活动记录内容:连接数据(返回地址、动态链、静态链)形式单元局部数据区(局部变量、内情向量、临时单元)三.存储分配策略本节略复习题参数

7、传递途径种类活动记录概念及主要内容存储分配策略有哪些,分别怎样实现?P2709

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

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

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