目标程序运行时的存储组织.pptVIP

  • 2
  • 0
  • 约3.96千字
  • 约 23页
  • 2017-02-13 发布于湖北
  • 举报
nhkjk 目标程序运行时的存储组织 学习目标: 掌握: 参数传递的几种方式 理解: 静态存储分配、栈式动态存储分配、 堆式动态存储分配的基本思想 目标程序运行时的存储组织 存储分配是在运行阶段进行的; 但编译程序在编译阶段要为其设计好存储组织形式,并将这种组织形式通过生成的目标代码体现出来; 运行阶段,随着目标代码的运行,数据的存储组织形式便得以实现。 目标程序运行时的存储组织要解决的问题: 把静态的源程序与程序运行时的动态活动联系起来,即运行中的程序信息是如何进行存储和访问的。 在程序执行过程中,程序中数据的存取是通过对应的存储单元来进行的 存储组织就是要在编译阶段为源程序中出现的用户定义的变量与常量、临时工作单元、过程或函数调用时需要的连接单元与返回地址等分配其在运行阶段的存储空间 8.1 运行时的存储空间结构 当程序运行时,存储区的内容包括: 目标代码 目标代码的大小在编译时可以静态确定,因此可以把它放在静态确定的区域; 目标代码运行时的数据空间 数据空间包括:用户定义的各种类型的数据对象;临时工作单元;输入/输出缓冲区等 数据空间有三种组织形式:静态数据区、栈区和堆区 运行时的存储空间结构如下: 8.2 运行时的存储空间分配 影响分配策略的因素: 源语言的结构特点 源语言的数据类型 源语言中决定名字作用域的规则 编译器具体实现时,采用如下三种分配策略之一或三种的混

文档评论(0)

1亿VIP精品文档

相关文档