- 1
- 0
- 约3.91千字
- 约 50页
- 2019-12-01 发布于天津
- 举报
第10章 目标程序运行时的组织;概 述;目标代码所占用空间的大小在编译时能确定。
有些数据对象所占用的空间也能在编译时确定。
而有些数据对象具有可变体积和待分配性质,无法在编译时确定存储空间的位置。
因此运行时的存储区常常划分成:目标区、静态数据区、栈区和堆区;所谓数据空间的分配,本质上看,是将程
序中的每个名字与一个存储位置关联起来,
该存储位置用以容纳名字的值。
关联(Binding)
将源程序的文本 ? 程序运行动作的实现
即源程序文本要做哪些功能,目标程序要实现它的功能。
源文件中的名字N ? 运行时的存储S
(N到S的映射);10.1 数据空间的三种不同使用方法和管理方法
数据空间的三种不同使用方法和管理方法:
静态存储分配、栈式动态存储分配和堆式动态存储分配。;像FORTRAN这样的语言,其程序是段结构的,即由主程序段和若干子程序段组成。
各程序段中定义的名字一般是彼此独立的,也即各段的数据对象名的作用域在各段中,同一个名字在不同的程序段表示不同的存储单元,不会在不同段间互相引用、赋值。
另外它的每个数据名所需的存储空间大小都是常量(即不许含可变体积的数据,如可变数组),且所有数据名的性质是完全确定的
原创力文档

文档评论(0)