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

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

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

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

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

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

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

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

你可能感兴趣的文章
Objective-C实现KPCA(附完整源码)
查看>>
Objective-C实现max subarray sum最大子数组和算法(附完整源码)
查看>>
Objective-C实现MaximumSubarray最大子阵列(动态规划解决方案)算法(附完整源码)
查看>>
Objective-C实现md5算法(附完整源码)
查看>>
Objective-C实现miller rabin米勒-拉宾素性检验算法(附完整源码)
查看>>
Objective-C实现not gate非门算法(附完整源码)
查看>>
Objective-C实现perfect cube完全立方数算法(附完整源码)
查看>>
Objective-C实现segment tree段树算法(附完整源码)
查看>>
Objective-C实现SinglyLinkedList单链表算法(附完整源码)
查看>>
Objective-C实现Skip List跳表算法(附完整源码)
查看>>
Objective-C实现三次样条曲线(附完整源码)
查看>>
Objective-C实现二进制补码算法(附完整源码)
查看>>
Objective-C实现内格尔·施雷肯伯格算法(附完整源码)
查看>>
Objective-C实现分解质因数(附完整源码)
查看>>
Objective-C实现切换数字的符号switchSign算法(附完整源码)
查看>>
Objective-C实现删除重复的字母字符算法(附完整源码)
查看>>
Objective-C实现判断32位的数字是否为正数isPositive算法(附完整源码)
查看>>
Objective-C实现十进制转N进制算法(附完整源码)
查看>>
Objective-C实现单例模式(附完整源码)
查看>>
Objective-C实现单向链表的反转(附完整源码)
查看>>