第6章 运行时刻环境的组织.ppt

第一章:编译概述 编 译 原 理 杭州电子科技大学 第 6 章 运行时刻环境的组织 概述 有关源语言中的一些问题的讨论 存储组织 运行时刻存储分配策略 对非局部名字的访问 6.0 概述 在生成目标代码之前,必须了解目标代码执行时的环境 过程(或函数) 过程的活动 活动树 控制栈 说明的作用域 6.1 有关源语言中的一些问题的讨论 名字的绑定 6.1 有关源语言中的一些问题的讨论 几种典型程序设计语言的特点 6.2 存储组织 运行时刻内存的典型划分 活动记录 6.3 运行时刻存储分配策略 静态存储分配 FORTRAN 语言 程序设计语言若允许递归调用、可变数组、可变数据结构: 栈式存储分配的思想: 栈式存储分配的实现 有些程序设计语言允许用户自由申请内存空间,如 C 的 malloc 和 free,PASCAL 的 new 和 dispose 这时采用堆式存储分配方案 6.4 对非局部名字的访问 非局部名字 最近嵌套的作用域规则 main ( ) { int a = 0; int b = 0; { int b = 1; { int a = 2; } { int b = 3; } } } 分程序(块)结构 —— ALGOL 和 C 不含过程嵌套定义 —— C 有过程嵌套定义 —— PA

文档评论(0)

1亿VIP精品文档

相关文档