




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、CH8 運(yùn)行時存儲空間組織運(yùn)行時存儲空間組織編譯程序總框編譯程序總框 符符 號號 表表詞法分析器詞法分析器語法分析器語法分析器語義分析器語義分析器代碼優(yōu)化代碼優(yōu)化出出 錯錯 處處 理理源程序源程序目標(biāo)程序目標(biāo)程序單詞符號集單詞符號集語法單位集語法單位集中間代碼程序中間代碼程序中間代碼程序中間代碼程序 目標(biāo)代碼生成目標(biāo)代碼生成 存儲空間組織存儲空間組織存儲空間分配策略存儲空間分配策略 1).1).靜態(tài)分配靜態(tài)分配 存儲分配由編譯程序在編譯時進(jìn)行;存儲分配由編譯程序在編譯時進(jìn)行; 2).2).動態(tài)分配動態(tài)分配 在編譯時生成相應(yīng)在編譯時生成相應(yīng)( (申請空間申請空間) )的目標(biāo)的目標(biāo) 程序,在目標(biāo)程
2、序運(yùn)行時,執(zhí)行該代碼,程序,在目標(biāo)程序運(yùn)行時,執(zhí)行該代碼, 進(jìn)行存儲分配。進(jìn)行存儲分配。 (有:棧式存儲分配,堆式存儲分配)(有:棧式存儲分配,堆式存儲分配)影響存儲分配策略的源語言主要特征影響存儲分配策略的源語言主要特征 1). 過程能否遞歸調(diào)用;過程能否遞歸調(diào)用;Program PP(input,output); var k: integer; Function F(n:integer):integer; begin if n=0 then F:=1 else F:=n*F(n-1); end; begin K:=F(10); end.執(zhí)行順序:執(zhí)行順序: P PPFPF1 1FF2 2
3、每一次調(diào)用每一次調(diào)用F F,需要一套數(shù)據(jù)區(qū)需要一套數(shù)據(jù)區(qū)影響存儲分配策略的源語言主要特征影響存儲分配策略的源語言主要特征 2).是否有可變數(shù)組(可變數(shù)組的大小創(chuàng)建時決定);是否有可變數(shù)組(可變數(shù)組的大小創(chuàng)建時決定);Pascal: Pascal: thepointthepoint : array of integer; : array of integer; setlength(thepoint,5); setlength(thepoint,5); 在在C99C99,實(shí)現(xiàn)了,實(shí)現(xiàn)了變長數(shù)組:變長數(shù)組:用用( (整型整型) )變量或表達(dá)式聲明變量或表達(dá)式聲明的數(shù)組。(在的數(shù)組。(在C90C90和
4、和C+C+,方括號內(nèi)必須是常數(shù)值)。,方括號內(nèi)必須是常數(shù)值)。例:例:intint f (void) ; f (void) ; intint main(voidmain(void) ) intint size = 4; size = 4; intint asizeasize; / ok in only C99; / ok in only C99 intint bsizebsize* *size; / ok in only C99size; / ok in only C99 intint c f() ; / ok in only C99 c f() ; / ok in only C99影響存儲分
5、配策略的源語言主要特征影響存儲分配策略的源語言主要特征 3). 過程能否訪問非局部且非全局的變量過程能否訪問非局部且非全局的變量 如:如:Pascal語言的過程嵌套聲明語言的過程嵌套聲明, ,內(nèi)層可以訪問內(nèi)層可以訪問 外層定義的名字外層定義的名字Program B1(input,output); const a=10; var b,c: integer; procedure B2(x:real); var f,g:real; procedure B3(y:real); const b=5; var j:real; begin j:=f * B3(a)+b; end; B3 begin ; be
6、gin ; end; B2 begin ; end; B1,主程序主程序其中其中: j,bj,b B3 B3 f B2f B2 a B1 a B1影響存儲分配策略的源語言主要特征影響存儲分配策略的源語言主要特征4). 是否有分程序結(jié)構(gòu)(分程序中可以有是否有分程序結(jié)構(gòu)(分程序中可以有變量聲明變量聲明)#include int test=5; void fun1( );void main( ) int test=10; fun1( ); printf(“2-%dn”,test); int test=15; printf(“3-%dn”,test); void fun1( ) printf(“1-%
7、dn”,test); 全局名:全局名:5main定義的定義的局部名:局部名:10分程序分程序定義的定義的局部名:局部名:15影響存儲分配策略的源語言主要特征影響存儲分配策略的源語言主要特征5). 名字的作用域名字的作用域 如,如, C語言的語言的staticstatic,externextern。動態(tài)局部變量(離開函數(shù),值就消失)動態(tài)局部變量(離開函數(shù),值就消失)靜態(tài)局部變量(離開函數(shù),值仍保留)靜態(tài)局部變量(離開函數(shù),值仍保留) 靜態(tài)全局變量(只限本文件引用)靜態(tài)全局變量(只限本文件引用)全局變量全局變量 (允許其它文件引用)(允許其它文件引用) 影響存儲分配策略的源語言主要特征影響存儲分配
8、策略的源語言主要特征6). 過程調(diào)用時如何傳遞參數(shù);過程調(diào)用時如何傳遞參數(shù); 如:傳值,傳地址,得結(jié)果,傳名等。如:傳值,傳地址,得結(jié)果,傳名等。7). 哪些實(shí)體可以作為參數(shù)和返回值;哪些實(shí)體可以作為參數(shù)和返回值; 如:簡單變量,結(jié)構(gòu)變量,標(biāo)號,過程等,如:簡單變量,結(jié)構(gòu)變量,標(biāo)號,過程等, 是否可以做為參數(shù)被傳遞和做為結(jié)果被返回?是否可以做為參數(shù)被傳遞和做為結(jié)果被返回?7). 是否允許動態(tài)的為對象分配存儲空間;是否允許動態(tài)的為對象分配存儲空間; 如:如:C C:mallocmalloc、calloccalloc; pascalpascal:NewNew、GetMemGetMem 8).8).
9、存儲空間是否必須顯式地釋放存儲空間是否必須顯式地釋放 如:如:C C:free free pascalpascal: DisposeDispose、FreeMemFreeMem8.1 目標(biāo)程序運(yùn)行時的活動目標(biāo)程序運(yùn)行時的活動8.1.1 過程的活動過程的活動1). 1). 過程的活動過程的活動: : 該過程的一次執(zhí)行該過程的一次執(zhí)行( (調(diào)用調(diào)用) )。2). 2). 過程活動的生存期過程活動的生存期: : 從執(zhí)行過程從執(zhí)行過程 P P 的過程體的第一步操作到最后的過程體的第一步操作到最后 一步操作之間的操作序列;包括執(zhí)行一步操作之間的操作序列;包括執(zhí)行P P時調(diào)用時調(diào)用 其他過程其他過程 (
10、(如如Q) Q) 花費(fèi)的時間?;ㄙM(fèi)的時間。3). 3). 過程遞歸:過程遞歸: 若過程尚未退出當(dāng)前活動,又開始其新的活動。若過程尚未退出當(dāng)前活動,又開始其新的活動。 過程遞歸可以是間接達(dá)到的。如:過程遞歸可以是間接達(dá)到的。如:PQRPPQRPprogram main (input,output); var A,B : integer; procedure Q(X: X: integer); begin end; procedureP(X,Y,Z:X,Y,Z:integer); begin Y:=Y+1 Y:=Y+1;Z:=Z+XZ:=Z+X; if Z0 then Q(Z)if Z0 then
11、 Q(Z) else P(X,Y,Z); else P(X,Y,Z); end; begin A:=2; B:=3; A:=2; B:=3; P(A+B,A,A); P(A+B,A,A); writeln(A=,A) end. 過過程程定定義義過程調(diào)用過程調(diào)用1).1).過程的活動過程的活動2).2).過程活動過程活動 的生存期的生存期3).3).過程遞歸過程遞歸8.1.2 參數(shù)傳遞參數(shù)傳遞 過程過程( (函數(shù)函數(shù)) ): 結(jié)構(gòu)化程序設(shè)計的主要手段;結(jié)構(gòu)化程序設(shè)計的主要手段; 節(jié)省程序代碼和擴(kuò)充語言能力的主要途徑;節(jié)省程序代碼和擴(kuò)充語言能力的主要途徑;只要有過程定義,就可以在別的程序單位調(diào)用它
12、。只要有過程定義,就可以在別的程序單位調(diào)用它。調(diào)用者調(diào)用者( (程序單位程序單位) )與被調(diào)用者與被調(diào)用者( (過程過程) ) 之間的信息之間的信息傳遞主要通過傳遞主要通過“全局量全局量”和和“參數(shù)參數(shù)”來完成。來完成。如果把數(shù)據(jù)看成內(nèi)容物的話,那么裝載數(shù)據(jù)的容器如果把數(shù)據(jù)看成內(nèi)容物的話,那么裝載數(shù)據(jù)的容器就是變元。就是變元。主程序主程序/ /過程過程調(diào)用者調(diào)用者被調(diào)用者被調(diào)用者變元變元過程過程變元變元控制控制數(shù)據(jù)流數(shù)據(jù)流數(shù)據(jù)流數(shù)據(jù)流: : . .從從調(diào)用者調(diào)用者的變元的變元 = = 被調(diào)用過程被調(diào)用過程的變元;的變元; . .被調(diào)用過程被調(diào)用過程對數(shù)據(jù)進(jìn)行計算處理;對數(shù)據(jù)進(jìn)行計算處理; .
13、.過程結(jié)束返回時,把數(shù)據(jù)結(jié)果過程結(jié)束返回時,把數(shù)據(jù)結(jié)果 = 調(diào)用者調(diào)用者的變元;的變元;在完成對過程中代碼段的調(diào)用執(zhí)行的同時,在完成對過程中代碼段的調(diào)用執(zhí)行的同時,也完成了與過程的數(shù)據(jù)交換也完成了與過程的數(shù)據(jù)交換信息傳遞中,涉及到兩類參數(shù)信息傳遞中,涉及到兩類參數(shù): : 屬于屬于被調(diào)用過程被調(diào)用過程: 用于表示相應(yīng)數(shù)據(jù)在過程執(zhí)行當(dāng)中的含義用于表示相應(yīng)數(shù)據(jù)在過程執(zhí)行當(dāng)中的含義 形式參數(shù)(形參,或啞元)形式參數(shù)(形參,或啞元)program main(input,output);); var A,B : integer; procedure P(X X, ,Y Y, ,Z Z: : integer
14、); begin Y:=Y+1 Y:=Y+1; Z:=Z+XZ:=Z+X; end; begin A:=2; B:=3; A:=2; B:=3; P( P(A+BA+B, ,A A, ,A A); ); writeln(A=,A) end. 形式參數(shù)形式參數(shù)信息傳遞中,涉及到兩類參數(shù)信息傳遞中,涉及到兩類參數(shù): : 屬于屬于調(diào)用者調(diào)用者: 用于裝載調(diào)用者對被調(diào)過程的輸入用于裝載調(diào)用者對被調(diào)過程的輸入/ /輸出數(shù)據(jù);輸出數(shù)據(jù); 實(shí)在參數(shù)實(shí)在參數(shù) (實(shí)參(實(shí)參 )program main(input,output);); var A,B : integer; procedure P(X X, ,Y
15、 Y, ,Z Z: : integer); begin Y:=Y+1 Y:=Y+1; Z:=Z+XZ:=Z+X; end; begin A:=2; B:=3; A:=2; B:=3; P( P(A+BA+B, ,A A, ,A A); ); writeln(A=,A) end. 實(shí)在參數(shù)實(shí)在參數(shù)形參與實(shí)參之間按照從左到右的順序一一對應(yīng)。形參與實(shí)參之間按照從左到右的順序一一對應(yīng)。即:處于兩個列表的相同位置的變元,意味著它們即:處于兩個列表的相同位置的變元,意味著它們 是相互關(guān)聯(lián)的。是相互關(guān)聯(lián)的。 形形- -實(shí)對應(yīng)的主要方式:傳值,傳地址,得結(jié)果,傳名實(shí)對應(yīng)的主要方式:傳值,傳地址,得結(jié)果,傳名p
16、rogram main(input,output);); var A,B : integer; procedure P(X X, ,Y Y, ,Z Z: : integer); begin Y:=Y+1 Y:=Y+1; Z:=Z+XZ:=Z+X; end; begin A:=2; B:=3; A:=2; B:=3; P( P(A+BA+B, ,A A, ,A A); ); writeln(A=,A) end. 實(shí)在參數(shù)實(shí)在參數(shù)形式參數(shù)形式參數(shù)傳值調(diào)用(傳值調(diào)用(Call by value)調(diào)用者計算出實(shí)在參數(shù)的值,并將其傳送給過程的調(diào)用者計算出實(shí)在參數(shù)的值,并將其傳送給過程的形式參數(shù)。形式參數(shù)
17、。 調(diào)用者計算實(shí)參的值,放在過程可以取到的地方;調(diào)用者計算實(shí)參的值,放在過程可以取到的地方; 過程取出實(shí)參的值,放在過程內(nèi)對應(yīng)的形式單元中過程取出實(shí)參的值,放在過程內(nèi)對應(yīng)的形式單元中 ( (過程的活動記錄中開辟的存儲空間過程的活動記錄中開辟的存儲空間) ); 過程執(zhí)行時,像局部名一樣使用這些形式單元。過程執(zhí)行時,像局部名一樣使用這些形式單元。C參數(shù)為普通變量參數(shù)為普通變量void sub (void sub (intint x,intx,int y) y)pascal值參值參procedure procedure P(x,y:integerP(x,y:integer) )program mai
18、n(input,output); var A,B : integer; procedure P(X,Y,Z:X,Y,Z:integer); begin Y:=Y+1 Y:=Y+1;Z:=Z+XZ:=Z+X; end; begin A:=2; B:=3; A:=2; B:=3; P(A+B,A,A); P(A+B,A,A); writeln(A=,A) end. 主程序主程序子程序子程序T5X 5 A2Y2 3B3Z2 7此種參數(shù)傳遞方法,此種參數(shù)傳遞方法,過程內(nèi)對參數(shù)的變動過程內(nèi)對參數(shù)的變動不會影響到不會影響到“調(diào)用者調(diào)用者”輸出結(jié)果:輸出結(jié)果:A=2傳地址傳地址 (引用調(diào)用引用調(diào)用) ( C
19、all-by-address ) 調(diào)用者把一個指向?qū)崊⒌拇鎯Φ刂返闹羔?,傳遞給調(diào)用者把一個指向?qū)崊⒌拇鎯Φ刂返闹羔?,傳遞給過程的形參。過程的形參。 實(shí)參是名字:傳遞其地址;實(shí)參是名字:傳遞其地址; 實(shí)參是表達(dá)式:計算表達(dá)式值且存放在某一實(shí)參是表達(dá)式:計算表達(dá)式值且存放在某一 存儲單元,將該存儲單元地址傳遞過去。存儲單元,將該存儲單元地址傳遞過去。 過程中對形參的引用和賦值,都變成對傳遞過程中對形參的引用和賦值,都變成對傳遞 來的指針的間接引用訪問。來的指針的間接引用訪問。C C參數(shù)為指針變量參數(shù)為指針變量 void void sub(intsub(int * *sum)sum)數(shù)組作為參數(shù)數(shù)組
20、作為參數(shù)void void Func(intFunc(int arr5) arr5)pascalpascal變參變參procedure procedure P(VarP(Var x,y:integerx,y:integer) ) program main(input,output); var A,B : integer; procedure P(X,Y,Z:X,Y,Z:integer); begin Y:=Y+1 Y:=Y+1;Z:=Z+XZ:=Z+X; end; begin A:=2; B:=3; A:=2; B:=3; P(A+B,A,A); P(A+B,A,A); writeln(A=,
21、A) end. 主程序主程序T 5A 2 3 8B 3子程序子程序XTTYAAZAA輸出結(jié)果:輸出結(jié)果:A=8C C語言參數(shù)例語言參數(shù)例# include # include void sub (void sub (intint x,intx,int y,inty,int * *sum)sum) * *sum=sum=x+yx+y;main ( )main ( ) intint x=9,y=10,s=1; x=9,y=10,s=1; sub(x,y,&ssub(x,y,&s);); printf(%dprintf(%d n,sn,s);); 答案答案: 19: 19其中:其中:
22、x,yx,y 傳值傳值 sum sum 傳地址傳地址其中:其中:x x 傳值傳值 y y 傳地址傳地址#include #include intint x,y,zx,y,z; ; void void p(intp(int * *x,intx,int y) y) + +* *x; y- -; z=x; y- -; z=* *x+yx+y; ; printf(%d,%d,%dnprintf(%d,%d,%dn,* *x,y,zx,y,z); ); void main() void main() x=2; y=3; z=4; x=2; y=3; z=4; p(&x,yp(&x,y);
23、); printf(%d,%d,%dn,x,y,zprintf(%d,%d,%dn,x,y,z);); p(&y,xp(&y,x);); printf(%d,%d,%dn,x,y,zprintf(%d,%d,%dn,x,y,z);); 3, 2, 53, 2, 53, 3, 53, 3, 54, 2, 64, 2, 63, 4, 63, 4, 6得結(jié)果得結(jié)果 ( Call by result ) 或或 復(fù)制恢復(fù)復(fù)制恢復(fù) ( Copy-Restore ) 被調(diào)用過程為每個形參設(shè)置兩個形式單元;被調(diào)用過程為每個形參設(shè)置兩個形式單元; 分別存地址、值。分別存地址、值。 調(diào)用者把實(shí)在參
24、數(shù)的調(diào)用者把實(shí)在參數(shù)的地址和值地址和值同時傳遞到被調(diào)用同時傳遞到被調(diào)用 過程中;過程中; 被調(diào)用過程直接使用被調(diào)用過程直接使用實(shí)參的值實(shí)參的值; 過程過程返回時,把形參的現(xiàn)行值復(fù)制到相應(yīng)的實(shí)在返回時,把形參的現(xiàn)行值復(fù)制到相應(yīng)的實(shí)在 參數(shù)的地址中參數(shù)的地址中, ,將計算結(jié)果返回給調(diào)用者。將計算結(jié)果返回給調(diào)用者。( AdaAda,pascalpascal ) )program main(input,output); var A,B : integer; procedure P(X,Y,Z:X,Y,Z:integer); begin Y:=Y+1 Y:=Y+1;Z:=Z+XZ:=Z+X; end;
25、begin A:=2; B:=3; A:=2; B:=3; P(A+B,A,A); P(A+B,A,A); writeln(A=,A) end. 主程序主程序T 5A 2 3 7B 3子程序子程序XTT5 5YAA2 2 3 3ZAA2 2 7 7或或: 主程序主程序T 5A 2 7 3B 3結(jié)果:結(jié)果:A=7 (左左右右) 或:或:A=3 (右右左左)傳名調(diào)用傳名調(diào)用 或:換名調(diào)用或:換名調(diào)用 ( Call-by-Name ) 調(diào)用者調(diào)用者將實(shí)在參數(shù)的名字傳給將實(shí)在參數(shù)的名字傳給被調(diào)用被調(diào)用過程中過程中 相應(yīng)的形式參數(shù);相應(yīng)的形式參數(shù); 被調(diào)用被調(diào)用過程的過程體中,所有的形式參數(shù)都過程的過程
26、體中,所有的形式參數(shù)都 用相應(yīng)實(shí)在參數(shù)的名字進(jìn)行替換;用相應(yīng)實(shí)在參數(shù)的名字進(jìn)行替換;ALGOL ALGOL 使用的一種參數(shù)傳遞方式使用的一種參數(shù)傳遞方式program main(input,output); var A,B : integer; procedure P(X,Y,Z:integer); begin Y:=Y+1;Z:=Z+X; end; begin A:=2; B:=3; P(A+B,A,A); writeln(A=,A) end. program main(input,output); var A,B : integer; procedure P(X,Y,Z:integer);
27、 begin A:=A+1;A:=A+(A+B); end; begin A:=2; B:=3; P(A+B,A,A); writeln(A=,A) end. 主程序主程序TAB52 3 93輸出結(jié)果:輸出結(jié)果:A=98.2 8.2 運(yùn)行時存儲器的劃分運(yùn)行時存儲器的劃分8.2.1 8.2.1 運(yùn)行時存儲器的劃分運(yùn)行時存儲器的劃分一個目標(biāo)程序運(yùn)行所需的存儲空間包括一個目標(biāo)程序運(yùn)行所需的存儲空間包括: : 存放目標(biāo)代碼的空間存放目標(biāo)代碼的空間 存放數(shù)據(jù)項目的空間存放數(shù)據(jù)項目的空間 存放程序運(yùn)行的控制或連接數(shù)據(jù)所需單元存放程序運(yùn)行的控制或連接數(shù)據(jù)所需單元 ( (控制??刂茥? )一個程序在運(yùn)行時刻的
28、內(nèi)存劃分一個程序在運(yùn)行時刻的內(nèi)存劃分:代碼代碼(Code)靜態(tài)數(shù)據(jù)靜態(tài)數(shù)據(jù)(Static Data)棧棧(Stack) 堆堆(Heap) 絕大多數(shù)高級語言,執(zhí)行時不絕大多數(shù)高級語言,執(zhí)行時不能改變代碼,所以在編譯時,能改變代碼,所以在編譯時,所有代碼所有代碼( (包括每個過程的入包括每個過程的入口點(diǎn)口點(diǎn)) )地址都是可計算的。地址都是可計算的。過程過程1 1的代碼的代碼過程過程2 2的代碼的代碼. . . .過程過程n n的代碼的代碼過程過程1 1入口入口過程過程2 2入口入口過程過程n n入口入口代代碼碼區(qū)區(qū)內(nèi)容內(nèi)容代碼區(qū)代碼區(qū)大小大小靜態(tài)確定靜態(tài)確定位置位置靜態(tài)確定靜態(tài)確定靜態(tài)數(shù)據(jù):靜態(tài)數(shù)
29、據(jù):編譯時就可以確定存儲位置的數(shù)據(jù)。編譯時就可以確定存儲位置的數(shù)據(jù)。如:如:* *) FORTRAN77 ) FORTRAN77 :所有的數(shù)據(jù);:所有的數(shù)據(jù); * *) Pascal ) Pascal : 全局變量;全局變量; * *) C ) C : 外部變量,靜態(tài)變量外部變量,靜態(tài)變量;對常量,常數(shù):對常量,常數(shù): 編譯時已知其內(nèi)容,且編譯時已知其內(nèi)容,且值不變。通常由編譯程值不變。通常由編譯程序直接插入到代碼中,序直接插入到代碼中,不分配數(shù)據(jù)空間。不分配數(shù)據(jù)空間。內(nèi)容內(nèi)容 數(shù)據(jù)段數(shù)據(jù)段 靜態(tài)數(shù)據(jù)區(qū)靜態(tài)數(shù)據(jù)區(qū)大小大小靜態(tài)確定靜態(tài)確定位置位置靜態(tài)確定靜態(tài)確定目標(biāo)代碼目標(biāo)代碼靜態(tài)數(shù)據(jù)靜態(tài)數(shù)據(jù)棧
30、棧堆堆棧區(qū):棧區(qū):用于用于符合符合后進(jìn)先出使用風(fēng)格的數(shù)據(jù);后進(jìn)先出使用風(fēng)格的數(shù)據(jù); * *) ) 過程運(yùn)行的控制及連接數(shù)據(jù);過程運(yùn)行的控制及連接數(shù)據(jù); * *) ) 過程的局部變量、形式參數(shù)等;過程的局部變量、形式參數(shù)等;目標(biāo)代碼目標(biāo)代碼靜態(tài)數(shù)據(jù)靜態(tài)數(shù)據(jù)棧棧堆堆堆區(qū):堆區(qū):用于用于不符合不符合后進(jìn)先出使用風(fēng)格的數(shù)據(jù);后進(jìn)先出使用風(fēng)格的數(shù)據(jù); * *) ) 動態(tài)申請地址空間的變量。動態(tài)申請地址空間的變量。 其中:其中:“棧區(qū)棧區(qū)”和和“堆區(qū)堆區(qū)”的大小是隨著程序的運(yùn)的大小是隨著程序的運(yùn)行而行而 改變的,因此兩者采用對開式使用。改變的,因此兩者采用對開式使用。8.2.2 8.2.2 活動記錄活動記錄過程在一次活動過程在一次活動( (執(zhí)行執(zhí)行) )中所需要的信息,存放在一片中所需要的信息,存放在一片連續(xù)的存儲區(qū)中,稱為一個活動記錄。過程調(diào)用產(chǎn)生連續(xù)的存儲區(qū)中,稱為一個活動記錄。過程調(diào)用產(chǎn)生新的活動記錄。新的活動記錄。活動記錄中至少應(yīng)該存放兩類信息:活動記錄中至少應(yīng)該存放兩類信息: 1. 1. 控制信息:控制信息: * *)控制活動的正確調(diào)用與返回;)控制活動的正確調(diào)用與返回;( (如:返回地址如:返回地址) ) * *)控制活動記錄的正確切換;)控制活動記錄的正確切換;( (如:動態(tài)鏈如:動態(tài)鏈) ) 2. 2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 體諒對方夫妻吵架保證書3篇
- 租賃經(jīng)營的市場統(tǒng)計與數(shù)據(jù)分析應(yīng)用考核試卷
- 相機(jī)濾鏡類型與場景應(yīng)用考核試卷
- 測繪技術(shù)在城市熱島效應(yīng)研究中的應(yīng)用考核試卷
- 知識產(chǎn)權(quán)海關(guān)協(xié)助考核試卷
- 《論語(英譯本)》中理雅各的‘孔子變形記’解析
- 2025標(biāo)準(zhǔn)租賃協(xié)議合同書
- 2025年租賃合同樣本
- 2025國內(nèi)勞務(wù)合同模板
- T-ISC 0027-2023 《互聯(lián)網(wǎng)企業(yè)未成年人網(wǎng)絡(luò)保護(hù)管理體系》
- 【湘少版】(三起)三年級英語下冊(全冊)配套練習(xí)
- 裝修施工投標(biāo)書模板
- 技術(shù)創(chuàng)新與專利申請情況匯報
- 《民航概論》全套課件演示課件
- 公立醫(yī)院內(nèi)控管理制度
- 麻醉蘇醒延遲:麻醉蘇醒延遲的原因與處理
- 室顫的搶救與護(hù)理課件
- 2023年6月六級真題第一套
- 對《民間口頭敘事不止是文學(xué)-從猛將寶卷、猛將神歌談起》的問答、評議與討論
- 經(jīng)典500家庭經(jīng)典雜文
- 變更稅務(wù)登記表模板
評論
0/150
提交評論