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

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

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

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

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

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

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

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

你可能感兴趣的文章
Redis入门概述
查看>>
php 实现Iterator 接口
查看>>
PHP 实现N阶矩阵相乘
查看>>
php 实现进制转换(二进制、八进制、十六进制)互相转换
查看>>
PHP 实现页面跳转的三种方式及详细解析
查看>>
php 将XML对象转化为数组
查看>>
PHP 工具
查看>>
php 常用方法
查看>>
PHP 并发扣款,保证数据一致性(悲观锁和乐观锁)
查看>>
php 延迟静态绑定static关键字
查看>>
php 引用 -
查看>>
Redis入门
查看>>
PHP 截取字符串乱码的解决方案
查看>>
php 接口类与抽象类的实际作用
查看>>
PHP 插入排序 -- 折半查找
查看>>
PHP 支持8种基本的数据类型
查看>>
php 放大镜,放大镜放大图片效果
查看>>
php 数据库 表格数据,php数据库到excel表格-php怎么把数据库数据放到表格里
查看>>
PHP 数据库连接池实现
查看>>
php 数组 区别,PHP中数组的区别
查看>>