9-运行时存储空间组织.ppt_第1页
9-运行时存储空间组织.ppt_第2页
9-运行时存储空间组织.ppt_第3页
9-运行时存储空间组织.ppt_第4页
9-运行时存储空间组织.ppt_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第九章,运行时存储空间组织,程序的装入和链接,内存,Obj1,Obj2,Objn,linker,可装载模块,loader,File1,File2,Filen,compiler,程序的装入方式,绝对装入方式可重定位装入方式动态运行时装入方式,绝对装入方式,2000,6000,0,2000,6000,可重定位装入方式,0,1000,4000,0,7000,3000,Load3000,Load6000,动态运行时装入方式,0,1000,4000,0,7000,3000,Load3000,Load6000,0,5000,1000,Load3000,装入时,运行时,参数传递,形参、实参intfunc1(intm,intn)func1(a,b);左值:表达式所表示的存储单元右值:这个存储单元所存储的值A=4+6,四种参数传递方法,传值传地址(引用调用)传结果(复制恢复)实参的右值传给被调用过程,控制返回时,形参的当前右值复制回实参的左值。传名(宏扩展),传值:,procedurep(x,y,z);beginy:=y+2;z:=z+x;end;,begina:=4;b:=5;p(ab,a,a);printaend,printa的结果为4,传地址:,procedurep(x,y,z);beginy:=y+2;z:=z+x;end;,begina:=4;b:=5;p(ab,a,a);printaend,5,9,4,x,y,z,c,a,b,6,15,printa的结果为15,传结果:,procedurep(x,y,z);beginy:=y+2;z:=z+x;end;,begina:=4;b:=5;p(ab,a,a);printaend,9,4,4,5,9,4,x,y,z,c,a,b,6,13,6,13,printa的结果为13,传名调用-callbyname过程被看作宏,原文替换,procedureswap(varx,y:integer);vartemp:integer;begintemp:=x;x:=y;y:=tempend;,Swap(i,ai)temp:=i;i:=ai;ai:=temp;,传名:,procedurep(x,y,z);beginy:=y+2;z:=z+x;end;,begina:=4;b:=5;p(ab,a,a);printaend,a:=a+2;/6a:=a+(ab);/17,printa的结果为17,存储分配策略,静态存储分配在编译时对数据对象分配固定的存储单元,且在运行时保持不变.栈式动态存储分配运行时,每当调用一个过程,它所需的存储空间就动态地分配于栈顶,每当过程结束时就释放这部分空间.堆式动态存储分配允许用户自由申请和释放数据空间,目标程序运行时存储区的典型划分,数据区,mainstaticinti,k;intj;char*p,*p1;intm;p=newchar0 x20;p1=newchar0 x20;printf(“.”,&i0042359C&k004235A0&j0012FF7C&p0012FF78&p10012FF74&m0012FF70p00431940p1004318F0,栈式存储分配的实现,过程的活动记录AR(ActivationRecord)一段连续存储区,存放过程的一次执行所需动态信息,简单的栈式存储分配的实现,main调用QQ又调用了RR进入运行后的存储结构,ma

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论