博客
关于我
程序运行时的存储组织及管理
阅读量:348 次
发布时间:2019-03-04

本文共 373 字,大约阅读时间需要 1 分钟。

程序运行时的存储组织及管理概述

在生成目标代码之前,程序需要为变量或参数分配相对地址,并将这些信息存储在符号表中,以便生成具有变址访问的目标代码。例如,ADD AX, X[sp] 中,X[X]表示偏移量,sp表示数据区起始地址。目标程序在运行时进行绝对地址的分配。

程序运行时的存储区可以分为目标程序区、静态数据区、运行栈区和运行堆区。目标程序区用于存放目标代码,静态数据区用于存放编译时确定存储空间的数据。运行栈区和运行堆区则用于存储运行时动态分配的数据。

存储的对象可以分为持久生命周期、短暂生命周期和由用户决定生命周期的对象。持久生命周期的对象如程序代码、常量和全局变量存储在静态存储区。短暂生命周期的对象如局部变量和形式参数存储在运行栈区。由用户决定生命周期的对象如动态变量存储在运行堆区。

静态存储区的特点是存储生命周期与程序执行时间相

转载地址:http://weih.baihongyu.com/

你可能感兴趣的文章
Python基础语法:基本数据类型(列表)
查看>>
Python基础语法:内置函数
查看>>
Python基础语法:你不得不知的几种变量类型
查看>>
Python基础语法教程,零基础入门到精通,看完这一篇就够了
查看>>
Python基础语法与执行脚本的3种方式
查看>>
python基础语法
查看>>
python基础语法
查看>>
python系列【仅供参考】:python测试开发基础---multiprocessing.Pool
查看>>
Python基础综合练习
查看>>
Python基础练习之一输出10000以内的阿姆斯特朗数
查看>>
Python基础系列讲解—动态类型语言的特点
查看>>
python基础系列四:字符串,列表,字典,元组之间的转换
查看>>
python基础篇(9):模块
查看>>
python基础篇(8):异常处理
查看>>
python基础篇(8):字符串常用处理汇总
查看>>
python基础篇(7):函数进阶知识点
查看>>
python基础篇(6):global关键字
查看>>
python基础篇(5):None类型
查看>>
python基础篇(4):range语句
查看>>
python基础篇(3):print()补偿知识点
查看>>