我是靠谱客的博主 聪慧彩虹,最近开发中收集的这篇文章主要介绍《编译原理-龙书》练习第7章7.2 空间的栈式分配7.3 栈中非局部数据的访问7.4 堆管理7.5 垃圾回收概述7.6 基于跟踪的回收的介绍7.7 短停顿垃圾回收7.8 垃圾回收中的高级论题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

7.1 存储组织

7.2 空间的栈式分配

7.2.4栈中的变长数据,在c语言中所有变长数据都在堆中。

7.2.1 1)这种情况下快排效果最差O(n*n)

2)栈中最多状态情况:

P(1, 9)

P(1, 8)

...

P(1,2)

P(1,1)

共9个

7.2.3  1)              f(5)

                 f(4)                       f(3)

       f(3)            f(2)          f(2) f(1)

   f(2) f(1)    f(1) f(0)    f(1) ff(0)

f(1) f(0)

2)

f(5)

f(4)

f(3)

f(2)

f(1)

参数

返回值

局部s、t

3)

f(5)

f(3)

f(1)

参数

返回值

局部s、t

7.2.4 上面g的活动记录,下面f的活动记录

g参数

g返回值

g中保存的机器状态

g中局部变量

f参数

f返回值                             这一行及以上g创建,g写入值

f控制链

f局部数据

7.2.5

a = a+1 = 4

a = a+2 = 6

a+a = 12

7.2.6 c=4 b=&c a=&b

x = 4 py = &c ppz=&b

c += 1 = 5

c += 2 = 7

x += 3 = 7

return 7+7+7=21

7.3 栈中非局部数据的访问


7.4 堆管理

7.4.1 80 30 60 50 70 20 40

1) 

80306050702040
44->28 12 **  

2)

80306050702040
   ******8

7.5 垃圾回收概述

7.5.1

1) B的引用计数-1

2) X以外其它变量计数-1

3) F引用计数-1

7.5.2 D引用计数-1

7.6 基于跟踪的回收的介绍

7.6.1 1) A->B被删除,标记为reached依次包括X A C F H I G E,B和D将被回收

2)A->C,X A B D E G H C F,没有可以回收

3)A->D,D G将被回收

4)B,C将被回收

7.6.2 只考虑第一个A->B被删除

 FreeUnreachedUnscannedScanned
 **Allnullnull
 **All-XXnull
 **All-X-AAX
 ............
 **B,DnullX-B,D
 **+B,D   

7.6.3 只考虑第一个A->B被删除

初始:X  A       B     ...    I

           0   100  200 ...   900

计算新位置之前,B,D没有被访问到,其它对象从左往右排

7.6.4

7.7 短停顿垃圾回收


7.8 垃圾回收中的高级论题





最后

以上就是聪慧彩虹为你收集整理的《编译原理-龙书》练习第7章7.2 空间的栈式分配7.3 栈中非局部数据的访问7.4 堆管理7.5 垃圾回收概述7.6 基于跟踪的回收的介绍7.7 短停顿垃圾回收7.8 垃圾回收中的高级论题的全部内容,希望文章能够帮你解决《编译原理-龙书》练习第7章7.2 空间的栈式分配7.3 栈中非局部数据的访问7.4 堆管理7.5 垃圾回收概述7.6 基于跟踪的回收的介绍7.7 短停顿垃圾回收7.8 垃圾回收中的高级论题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(86)

评论列表共有 0 条评论

立即
投稿
返回
顶部