- 1、本文档共52页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第九章程序运行期间的存储空间组织;本节内容与要点;运行时存储空间的划分;运行时存储空间的划分(续);活动记录;当过程返回(活动结束)时,当前活动记录一般包含如下内容:
连接数据
返回地址
动态链:指向调用该过程前的必威体育精装版活动记录地址的指针。运行时,使运行栈上各数据区按动态建立的次序结成链。链头为栈顶起始位置。
静态链:指向静态直接外层必威体育精装版活动记录地址的指针,用来访问非局部数据。
;
形式单元:存放相应的实在参数的地址或值。
局部数据区:局部变量、内情向量、临时工作单元(如存放对表达式求值的结果)。
指针SP指向现行过程(即必威体育精装版进入工作的那个过程)的活动记录在栈里的起始位置。;活动记录结构图;存储分配策略;一、静态分配策略;适于静态存贮分配的语言必须满足以下条件:
(1)数组的上下界必须是常数;
(2)过程调用不允许递归;
(3)不允许采用动态的数据结构(即在程序运行过程中申请和释放的数据结构)。;由于过程调用不允许递归,数据项的存贮地址就与过程相联系。过程调用所使用的局部数据区可以直接安排在过程的目标代码之后,并把各数据项的存贮地址填入相关的目标代码中,以便在过程运行时访问这个局部数据区。
这里,不存在对存贮区的再利用问题。在执行目标程序时不必进行运行时的存贮空间管理,过程的进入和退出变得极为简单。;例:一个程序段的局部数据区;二、动态分配策略;简单的栈式存贮分配;1、栈式存储分配;C语言的程序结构;C语言程序的存储组织;2、C的活动记录;C过程的活动记录;3.、过程的执行;(1)过程调用---par相应的目标代码;(1)过程调用---call相应的目标代码;(2)过程进入;对每个数组说明,相应的目标指令组将做以下几件工作:
①计算各维的上、下限;
②调用数组空间分配子程序,其参数是各维的上、下限和内情向量单元首地址。
数组空间分配子程序计算并填好内情向量的所有信息,然后在TOP所指的位置之上留出数组所需的空间,并将TOP调整为指向数组区的顶端。
此后,在过程段执行语句的工作过程中,凡引用形式参数、局部变量或数组元素都是以SP为基址进行相对访问的。;进??过程P后所做工作示意;(3)过程返回;过程P返回示意;嵌套过程语言的栈式分配;非局部名字的访问的实现;一、静态链和活动记录;具有静态链的活动记录结构;假定过程的嵌套关系如下:
P;
vara;
Q(b);
vari;
R;
varc,d;
…
callR;
…
S;
varc,I;
…
callQ;
…
…
callS;
…;;;例:请见书上P258页嵌套程序。写出递归调用时活动记录的变化。
(程序见下页);.;返回;二、嵌套层次显示表(display)和活动记录;例如,令过程R的外层为Q,Q的外层为P,则过程R运行时display表的内容应为:;
由于过程的层数可以静态确定,因此每个过程的display表的体积在编译时即可知道。
由一个非局部量说明所在的静态层数和相对活动记录的相对地址,就可得到绝对地址:
绝对地址=display[静态层数」+相对地址;活动记录结构;由于每个过程的形式单元的数目在编译时是知道的,因此DISPLAY的相对地址d(相对于活动记录起点)在编译时也是完全确定的。
被调用过程为了建立自己的DISPLAY,则必须知道它的直接外层过程的DISPLAY,这意味着必须把直接外层的DISPLAY地址作为连接数据之一(称为“全局DISPLAY地址”)传送给被调用过程。
于是连接数据变为包含三项:①老SP值,②返回地址,③全局DISPLAY地址。
注意:0层过程(主程序)的DISPLAY只含一项,这一项就是在主程序开始工作时建立的第一个SP值。;2.过程调用、进入和返回;(2)过程进入。在转入过程P后,首先执行和简单栈式存贮分配相同的
您可能关注的文档
- 编译原理第3章.ppt
- 编译原理---第4章-语法分析和语法分析程序.pptx
- 编译原理-第10章(清华大学).ppt
- 编译原理第二章.ppt
- 编译原理第三章.ppt
- 编译原理第四章.ppt
- 编译原理第一章编译原理引论.ppt
- 编译原理讲义(第二章文法与语言).ppt
- 编译原理(清华大学).ppt
- 编译原理(清华大学).pptx
- [吉林]2023年吉林省直中小学“强师”招聘34人笔试历年高频考点(难、易错点)附带答案详解.docx
- [台州]浙江台州市黄岩区市场监督管理局招聘编外工作人员笔试历年高频考点(难、易错点)附带答案详解.docx
- [台州]浙江台州市建设工程质量检测中心招聘编制外用工4人笔试历年高频考点(难、易错点)附带答案详解.docx
- [台州]浙江台州椒江区大陈镇综合执法队招聘笔试历年高频考点(难、易错点)附带答案详解.docx
- [合肥]2023年安徽合肥市公安局第二批招聘警务辅助人员543人笔试历年高频考点(难、易错点)附带答案详解.docx
- [吉安]2023年江西吉安市大学生乡村医生专项招聘笔试历年高频考点(难、易错点)附带答案详解.docx
- [吉安]2024年江西吉安市中心人民医院招聘卫生专业技术人才73人笔试历年高频考点(难、易错点)附带答案详解.docx
- [合肥]2023年安徽医科大学管理岗和专业技术辅助岗招聘46人笔试历年高频考点(难、易错点)附带答案详解.docx
- [吉安]江西吉安市青原区人民医院人才引进笔试历年高频考点(难、易错点)附带答案详解.docx
- [台州]浙江台州温岭市交通运输局招聘编外人员笔试历年高频考点(难、易错点)附带答案详解.docx
文档评论(0)