- 1
- 0
- 约1.47万字
- 约 97页
- 2019-08-12 发布于江苏
- 举报
第六章 运行时存储空间的 组织和管理 编译程序在完成词法、语法和语义分析后,在生成目标代码之前,需要把程序的静态正文和实现这个程序的运行时的活动联系起来弄清楚将来在代码运行时刻,源代码中的各种变量、常量等用户定义的量是如何存放的,如何去访问它们。 在程序的执行过程中,程序中数据的存取是通过与之对应的存储单元来进行的。在程序语言中,程序使用的存储单元都是由标识符来表示的。它们对应的内存地址都是由编译程序在编译时或由其生成的目标程序运行时进行分配。所以对于编译程序来说存储组织与管理是一个复杂而又十分重要的问题。 本章内容: 讨论一个活动记录中的数据安排 程序执行过程中,所有活动记录的组织方式 存储器的组织与存储分配的策略 非局部名称的访问 参数传递 6.1 局部存储分配策略 过程的每一次运行称为一次活动(activation)。活动是一个动态的概念,它有有限的生存期。 活动的生存期是指从进入活动的第一条指令执行到离开此活动前的最后一条指令执行的这段时间,其中包括调用其它过程时其它活动的生存期。 6.1.2 名字的作用域和绑定 名字的作用域 一个声明起作用的程序部分称为该声明的作用域。 即使一个名字在程序中只声明一次,该名字在程序运行时也可能表示不同的数据对象。 变量与值的两步映射 6.1.3 活动记录 为了管理过程在一次执行中所需要的信息,使用一个连续的存储块,我们把这样的一个连续存储块称为活动纪录。 6.1.4 局部数据的安排 字节是可编址内存的最小单位。 6.1.4 局部数据的安排 字节是可编址内存的最小单位。 变量所需的存储空间可以根据其类型而静态确定。 6.1.4 局部数据的安排 字节是可编址内存的最小单位。 变量所需的存储空间可以根据其类型而静态确定。 一个过程所声明的局部变量,按这些变量声明时出现的次序,在局部数据域中依次分配空间。 6.1.4 局部数据的安排 字节是可编址内存的最小单位。 变量所需的存储空间可以根据其类型而静态确定。 一个过程所声明的局部变量,按这些变量声明时出现的次序,在局部数据域中依次分配空间。 局部数据的地址可以用相对于某个位置的地址来表示。 6.1.4 局部数据的安排 字节是可编址内存的最小单位。 变量所需的存储空间可以根据其类型而静态确定。 一个过程所声明的局部变量,按这些变量声明时出现的次序,在局部数据域中依次分配空间。 局部数据的地址可以用相对于某个位置的地址来表示。 数据对象的存储安排还有一个对齐问题。 6.1.5 程序块 本身含有局部变量声明的语句 可以嵌套 最接近的嵌套作用域规则 并列程序块不会同时活跃 并列程序块的变量可以重叠分配 main() { /? begin of B0 ?/ int a = 0; int b = 0; { /? begin of B1 ?/ int b = 1; {/? begin of B2 ?/ int a = 2; }/? end of B2 ?/ {/? begin of B3 ?/ int b = 3; }/? end of B3 ?/ }/? end of B1 ?/ }/? end of B0 ?/ main() { /? begin of B0 ?/ int a = 0; int b = 0; { /? begin of B1 ?/ int b = 1; {/? begin of B2 ?/ int a = 2; }/? end of B2 ?/ {/? begin of B3 ?/ int b = 3; }/? end of B3 ?/ }/? end of B1 ?/ }/? end of B0 ?/ main() { /? begin of B0 ?/ int a = 0; int b = 0; { /? begin of B1 ?/ int b = 1; {/? begin of B2 ?/ int a = 2; }/? end of B2 ?/ {/? begin of B3 ?/ int b = 3; }/? end of B3 ?/ }/? end of B1 ?/ }/? end of B0 ?/ 6.2 全局存储分配策略 介绍程序运行时所需的各个活动记录在存储空间的分配策略 6.2 全局存储分配策略 介绍程序运行时所需的各个活动记录在存储空间的分配策略 描述过程的目标代码怎样访问绑定到局部名字的存储单元 6.2 全局存储分配
您可能关注的文档
最近下载
- 重庆天齐锂电新材料有限公司新建1000吨_年高能锂电材料电池级金属锂项目环评报告.pdf VIP
- DB65T 3694-2015 现行哈萨克文与西里尔哈萨克文编码字符转换规则.docx VIP
- TGXAS 1044-2025《中医护理三级查房规范》(发布稿).pdf VIP
- 华为云服务登录.doc VIP
- 采砂场工业用水水资源论证论证表详解.doc VIP
- Onkyo安桥TX-NR828中文说明书.pdf
- 采砂场工业用水水资源论证论证表分析报告.doc
- 【中考】2025年广东佛山数学试卷(原卷+答案).docx VIP
- 2021年广东省佛山市中考数学真题及答案.pdf VIP
- SpaceX火星探索任务成本预算与风险管理分析报告.docx
原创力文档

文档评论(0)