第7章-运行时存储空间组织剖析
Pascal过程调用规则 (1)任何子程序都不能调用主程序,主程序可直接调用所有第1层的子程序。 (2)任何子程序(包括主程序)可直接调用自己的直接内层子程序,但不能直接调用隔层的内层子程序。 (3)内层子程序可以直接调用自己及它的任何一层外层子程序(不包括主程序)。 (4)并列子程序中后说明的可以调用先说明的,而先说明的不能调用后说明的(除非采用向前引用的方式)。 (5)一个子程序可以调用所有与自己的某个外层子程序并列,且其说明先于这个外层子程序的子程序。 (6)Pascal语言允许子程序自己调用自己,这种调用方式称为递归调用 嵌套过程语言活动记录 作业 P269 4 5 diaplay表在活动记录中的相对地址d在编译时能完全确定。 假定在现行过程中引用了某层过程(令其层次为k)的X变量,那么,可用下面两条指令获得X的地址: LD R1 (d+k)[SP] LD R2 dx[R1] 参数个数 返回地址 形式单元 临时单元 内情向量 局部变量 SP? 0 1 2 老SP TOP? Display 表 全局Diaplay 3 d … program P; var a, x : integer; procedure Q(b: integer); var i: integer; procedure R(u: integer; var v: integer); var c, d: integer; begin if u=1 then R(u+1, v) ...... v:=(a+c)*(b-d); ...... end {R} begin ...... R(1,x); ...... end {Q} procedure S; var c, i:integer; begin a:=1; Q(c); ...... end {S} begin a:=0; S; ...... end. {P} 主程序P ?过程 S ?过程 Q ?过程 R ?过程 R 0 0 返回地址 1 0(display) 2 a 3 x 4 0 5 返回地址 6 2(全局display) 7 0(形参个数) 8 0 9 5 10 主程序?过程 S c 11 i 12 TOP? SP ? 动态链 display 0 0 返回地址 1 0(display) 2 a 3 x 4 0 5 返回地址 6 2(全局display) 7 0(形参个数) 8 0 9 5 10 主程序P?过程 S ?过程 Q c 11 i 12 动态链 5 13 返回地址 14 9(全局display) 15 1(形参个数) 16 b(形参) 17 0 18 13 19 i 20 TOP? SP ? 0 0 返回地址 1 0(display) 2 a 3 x 4 0 5 返回地址 6 2(全局display) 7 0(形参个数) 8 0 9 5 10 主程序P?过程 S ?过程 Q ?过程 R c 11 i 12 动态链 5 13 返回地址 14 9(全局display) 15 1(形参个数) 16 b(形参) 17 0 18 13 19 i 20 13 21 返回地址 22 18(全局display) 23 2(形参个数) 24 u(形参) 25 v(形参) 26 0 27 13 28 21 29 c 30 d 31 TOP? SP ? 0 0 返回地址 1 0(display) 2 a 3 x 4 0 5 返回地址 6 2(全局display) 7 0(形参个数) 8 0 9 5 10 主程序P ?过程 S ?过程 Q ?过程 R ?过程 R c 11 i 12 动态链 5 13 返回地址 14 9(全局display) 15 1(形参个数) 16 b(形参) 17 0 18 13 19 i 20 13 21 返回地址 22 18(全局display) 23 2(形参个数) 24 u(形参) 25 v(形参) 26 0 27 13 28 21 29 c 30 d 31 TOP? SP ? 21 32 返回地址 33 27(全局display) 34 2(形参个数) 35 u(形参) 36 v(形参) 37 0 38 13 39 32 40 c 41 d 42 参数个数 返回地址 形式单元 临时单元 内情向量 局部变量 老SP Display 表 全局Diaplay 1. 每个par Ti(i=1,2,…n)可直接翻译成如下指令: (i+4)[TOP]:= Ti (传值) (i+4)[TOP]:=addr(Ti ) (传地址) 过程调用、过程进入、过程返回 TOP? SP ? 调用过程的 活动记录 ……
您可能关注的文档
- 名师面对面金华地区2017中考语文第4部分作文第三十二讲选材__积累写作素材让内容充实复习.ppt
- 名著阅读——西游记练习附答案.doc
- 名师面对面金华地区2017中考语文第4部分作文第三十讲审题__抓住关键信息让目的明确复习.ppt
- 第6讲05铸件合金.ppt
- 第6节_使用“资源管理器”管理文件、文件夹.ppt
- 名著阅读《西游记》练习题(含答案).doc
- 名人传.pptx
- 第6讲冲压性能控制.ppt
- 第6章酸碱滴定法.ppt
- 名词作状语.pptx
- 2026上半年海南事业单位联考文昌市招聘149人备考题库(1号)及完整答案详解一套.docx
- 2026上半年湖南长沙市政府专职消防员招聘260人备考题库附答案详解(黄金题型).docx
- 2026上半年贵州事业单位联考务川自治县招聘48人备考题库附参考答案详解(满分必刷).docx
- 2026上半年贵州事业单位联考毕节市七星关区招聘377人备考题库及完整答案详解.docx
- 2026上半年贵州事业单位联考贵州省住房和城乡建设厅招聘16人备考题库带答案详解(夺分金卷).docx
- 2026年上饶幼儿师范高等专科学校单招职业技能考试题库及答案详解(典优).docx
- 2026四川成都市公安局新津区分局招聘警务辅助人员27人备考题库及答案详解参考.docx
- 2026年临沂职业学院单招职业技能考试题库带答案详解(完整版).docx
- 2026四川成都市公安局新津区分局招聘警务辅助人员27人备考题库附答案详解(完整版).docx
- 2026四川成都市第三十二幼儿园招聘备考题库附参考答案详解(基础题).docx
最近下载
- 《GB/T 38271-2025塑料 聚苯乙烯(PS)、抗冲击聚苯乙烯(PS-I)、丙烯腈-丁二烯-苯乙烯(ABS)及苯乙烯-丙烯腈(SAN)树脂中残留苯乙烯单体含量的测定 气相色谱法》.pdf
- 刑事诉讼法(西南政大)中国大学MOOC 慕课 期末考试答案.docx VIP
- (正式版)H-J 1079-2019 固定污染源废气 氯苯类化合物的测定 气相色谱法(正式版)(正式版).docx VIP
- 一种多酶级联反应催化蔗糖生产异麦芽酮糖醇的方法及其应用.pdf VIP
- 美国膳食指南(2025-2030)解读课件PPT.pptx
- 2025版护理文书书写规范PPT课件(完整版).pptx
- 2025年组织生活会个人对照检查发言材料.docx VIP
- 心功能不全护理查房.pptx VIP
- 2025年房地产经纪人房产议价经典案例分析之“法律纠纷预防”专题试卷及解析.pdf VIP
- 2025年无人机驾驶员执照自动驾驶模式数据链通信原理专题试卷及解析.pdf VIP
原创力文档

文档评论(0)