版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第目標(biāo)程序運(yùn)行時(shí)的存儲(chǔ)組織演示文稿本文檔共59頁(yè);當(dāng)前第1頁(yè);編輯于星期三\15點(diǎn)36分(優(yōu)選)第目標(biāo)程序運(yùn)行時(shí)的存儲(chǔ)組織本文檔共59頁(yè);當(dāng)前第2頁(yè);編輯于星期三\15點(diǎn)36分運(yùn)行環(huán)境和存儲(chǔ)分配設(shè)計(jì)分析邏輯階段:在目標(biāo)代碼生成前,作準(zhǔn)備實(shí)質(zhì):
關(guān)聯(lián)(Binding)將源程序的文本程序運(yùn)行動(dòng)作的實(shí)現(xiàn)源文件中的名字N
運(yùn)行時(shí)的存儲(chǔ)S在語(yǔ)義學(xué)中,使用術(shù)語(yǔ)environment函數(shù)表示env:N→S(N到S的映射)本文檔共59頁(yè);當(dāng)前第3頁(yè);編輯于星期三\15點(diǎn)36分靜態(tài)文本中
運(yùn)行時(shí)動(dòng)作及為實(shí)現(xiàn)其動(dòng)作的準(zhǔn)備
(與運(yùn)行時(shí)數(shù)據(jù)對(duì)象的表示有關(guān))
執(zhí)行過程體控制數(shù)據(jù)對(duì)象的分配,為執(zhí)行過程體使用源文本中同樣的名字
目標(biāo)程序中不同的數(shù)據(jù)空間因?yàn)橐粋€(gè)過程可以是遞歸的,這時(shí)同一個(gè)名字在不同的時(shí)間可能代表不同的存儲(chǔ)單元過程定義過程名過程體本文檔共59頁(yè);當(dāng)前第4頁(yè);編輯于星期三\15點(diǎn)36分決定存儲(chǔ)管理復(fù)雜程度的因素——源語(yǔ)言本身1.允許的數(shù)據(jù)類型的多少
3.程序結(jié)構(gòu)決定名字的作用域的規(guī)則和結(jié)構(gòu)A.段結(jié)構(gòu)B.過程定義不嵌套,只允許過程遞歸調(diào)用C.分程序結(jié)構(gòu)分程序嵌套過程定義嵌套
2.語(yǔ)言中允許的數(shù)據(jù)項(xiàng)是靜態(tài)確定動(dòng)態(tài)確定本文檔共59頁(yè);當(dāng)前第5頁(yè);編輯于星期三\15點(diǎn)36分存儲(chǔ)分配方案策略:靜態(tài)存儲(chǔ)分配動(dòng)態(tài)存儲(chǔ)分配棧式堆式本文檔共59頁(yè);當(dāng)前第6頁(yè);編輯于星期三\15點(diǎn)36分術(shù)語(yǔ)靜態(tài):如果一個(gè)名字的性質(zhì)通過說明語(yǔ)句或隱或顯規(guī)則而定義,則稱這種性質(zhì)是“靜態(tài)”確定的。動(dòng)態(tài):如果名字的性質(zhì)只有在程序運(yùn)行時(shí)才能知道,則稱這種性質(zhì)為“動(dòng)態(tài)”確定的??勺?動(dòng)態(tài))數(shù)組:若一個(gè)數(shù)組所需的存儲(chǔ)空間的大小在編譯時(shí)就已知道,則稱它為確定數(shù)組,否則稱為可變(動(dòng)態(tài))數(shù)組。本文檔共59頁(yè);當(dāng)前第7頁(yè);編輯于星期三\15點(diǎn)36分例procedureA(m,n:integer);beginrealz;arrayB[m:n];begin···end;
end;本文檔共59頁(yè);當(dāng)前第8頁(yè);編輯于星期三\15點(diǎn)36分本文檔共59頁(yè);當(dāng)前第9頁(yè);編輯于星期三\15點(diǎn)36分一個(gè)過程的一次執(zhí)行所需要的信息使用一個(gè)連續(xù)的存儲(chǔ)區(qū)來(lái)管理,這個(gè)區(qū)(塊)叫做一個(gè)活動(dòng)記錄或frame(幀)過程活動(dòng)記錄AR(ActiveRecord):為說明方便,假定程序是由過程組成,過程區(qū)分為源文本,運(yùn)行時(shí)稱作過程的激活。本文檔共59頁(yè);當(dāng)前第10頁(yè);編輯于星期三\15點(diǎn)36分
活動(dòng)記錄包括:臨時(shí)值:如計(jì)算表達(dá)式時(shí)的中間工作單元局部變量:一個(gè)過程定義的變量(包括簡(jiǎn)單變量和可變數(shù)組的內(nèi)情向量)保存運(yùn)行過程前的狀態(tài)存取鏈(可選):對(duì)于非局部量的引用控制鏈(可選):指向調(diào)用者的活動(dòng)記錄實(shí)參(形式單元)返回地址:保存該被調(diào)過程返回后的地址本文檔共59頁(yè);當(dāng)前第11頁(yè);編輯于星期三\15點(diǎn)36分簡(jiǎn)單的棧式分配方案
程序結(jié)構(gòu)特點(diǎn):過程定義不嵌套,過程可遞歸調(diào)用,含可變數(shù)組;例:programmain;
全局變量的說明procR;……endR;procQ;……endQ;主程序執(zhí)行語(yǔ)句endmain.本文檔共59頁(yè);當(dāng)前第12頁(yè);編輯于星期三\15點(diǎn)36分Main---->Q---->RMain--->Q---->Q
TOP----->R的活動(dòng)記錄
SP------>Q的活動(dòng)記錄主程序全局?jǐn)?shù)據(jù)區(qū)SP指向現(xiàn)行過程記錄的起點(diǎn),TOP指向已占用的棧頂單元。
TOP----->Q的活動(dòng)記錄
SP------>Q的活動(dòng)記錄主程序全局?jǐn)?shù)據(jù)區(qū)本文檔共59頁(yè);當(dāng)前第13頁(yè);編輯于星期三\15點(diǎn)36分TOP---->臨時(shí)工作單元局部簡(jiǎn)單變量局部數(shù)組的內(nèi)情向量實(shí)參(形式單元)參數(shù)個(gè)數(shù)
SP----->控制鏈(老SP)返回地址
TOP----->R的活動(dòng)記錄
SP------>Q的活動(dòng)記錄主程序全局?jǐn)?shù)據(jù)區(qū)R的數(shù)組區(qū)無(wú)嵌套定義的過程活動(dòng)記錄內(nèi)容(含有可變數(shù)組)分配了數(shù)組區(qū)之后的運(yùn)行棧本文檔共59頁(yè);當(dāng)前第14頁(yè);編輯于星期三\15點(diǎn)36分嵌套過程語(yǔ)言的棧式分配方案
主要特點(diǎn):(語(yǔ)言)一個(gè)過程可以引用包圍它的任一外層過程所定義的標(biāo)識(shí)符(如變量,數(shù)組或過程等)。(實(shí)現(xiàn))一個(gè)過程可以引用它的任一外層過程的最新活動(dòng)記錄中的某些數(shù)據(jù)。本文檔共59頁(yè);當(dāng)前第15頁(yè);編輯于星期三\15點(diǎn)36分
關(guān)鍵技術(shù):解決對(duì)非局部量的引用(存?。?。跟蹤辦法:
1.用靜態(tài)鏈(如PL/0的SL)。
2.用DISPLAY表。設(shè)法跟蹤每個(gè)外層過程的最新活動(dòng)記錄AR的位置。本文檔共59頁(yè);當(dāng)前第16頁(yè);編輯于星期三\15點(diǎn)36分靜態(tài)鏈(存取鏈)和活動(dòng)記錄在運(yùn)行棧的數(shù)據(jù)區(qū)(活動(dòng)記錄)中增加一個(gè)靜態(tài)鏈,從一個(gè)過程的當(dāng)前活動(dòng)記錄指向其直接外層的最新活動(dòng)記錄。當(dāng)過程結(jié)束時(shí),利用動(dòng)態(tài)鏈可以得到調(diào)用前的活動(dòng)記錄的基地址。本文檔共59頁(yè);當(dāng)前第17頁(yè);編輯于星期三\15點(diǎn)36分臨時(shí)單元內(nèi)情向量簡(jiǎn)單變量形參單元形參個(gè)數(shù)靜態(tài)鏈返回地址動(dòng)態(tài)鏈(老sp)含靜態(tài)鏈的活動(dòng)記錄連接數(shù)據(jù)sptop調(diào)用該過程的過程sp值靜態(tài)定義時(shí)直接外層過程的sp值本文檔共59頁(yè);當(dāng)前第18頁(yè);編輯于星期三\15點(diǎn)36分例:有如下的示意性源程序(假定該語(yǔ)言的過程是無(wú)參數(shù)的):PROGRAMmain;VARa,b,c:real;PROGRAMx;VARd,e:real;PROGRAMy;VARf,g:real;BEGIN…END;{y}PROGRAMz;VARh,i,j:real;BEGIN…y;END;{z}
BEGIN…11:z;…END;{x}BEGIN…x;…END.{main}本文檔共59頁(yè);當(dāng)前第19頁(yè);編輯于星期三\15點(diǎn)36分并已知在運(yùn)行時(shí)刻,以過程為單位對(duì)程序中的變量進(jìn)行動(dòng)態(tài)存儲(chǔ)分配,采用靜態(tài)鏈實(shí)現(xiàn)非局部名字的訪問。當(dāng)運(yùn)行主程序而調(diào)用過程語(yǔ)句“x;”時(shí),試分別給出以下時(shí)刻的數(shù)據(jù)存儲(chǔ)棧S的情形。(要求給出各靜態(tài)鏈(SL)和動(dòng)態(tài)鏈(DL)的值。)已開始而尚未執(zhí)行完畢標(biāo)號(hào)為11的語(yǔ)句。分析:調(diào)用過程的順序:
main(0)x(1)z(2)y(2)本文檔共59頁(yè);當(dāng)前第20頁(yè);編輯于星期三\15點(diǎn)36分棧頂寄存器T運(yùn)行棧S[T]調(diào)用語(yǔ)句及當(dāng)時(shí)T值基地址寄存器sp1動(dòng)態(tài)鏈DLsp=12返回地址RA3靜態(tài)鏈SL4a5b6cT=6;x;7動(dòng)態(tài)鏈DL=1sp=78返回地址RA9靜態(tài)鏈SL=110d11eT=11;z;本文檔共59頁(yè);當(dāng)前第21頁(yè);編輯于星期三\15點(diǎn)36分棧頂寄存器T運(yùn)行棧S[T]調(diào)用語(yǔ)句及當(dāng)時(shí)T值基地址寄存器sp12動(dòng)態(tài)鏈DL=7sp=1213返回地址RA14靜態(tài)鏈SL=715h16i17jT=17;y;18動(dòng)態(tài)鏈DL=12sp=1819返回地址RA20靜態(tài)鏈SL=721f22gT=2223本文檔共59頁(yè);當(dāng)前第22頁(yè);編輯于星期三\15點(diǎn)36分本文檔共59頁(yè);當(dāng)前第23頁(yè);編輯于星期三\15點(diǎn)36分用display表的方案(0)主程序--->(1)P--->(2)Q--->(1)Rd[0]主程序的活動(dòng)記錄
spdisplaytop(1)d[1]d[0]display
P的活動(dòng)記錄主程序的活動(dòng)記錄
sptop(2)display含義:一個(gè)指針數(shù)組d,也可看作一個(gè)小棧,自頂向下每個(gè)單元依次存放著現(xiàn)行層、直接外層、…直至最外層(0層,即主程序?qū)樱┑让繉舆^程的最新活動(dòng)記錄的地址。display的構(gòu)成:從調(diào)用者的display表中取i個(gè)(i為被調(diào)用者的靜態(tài)層次數(shù))單元,再加上被調(diào)用者的數(shù)據(jù)區(qū)首地址即可。本文檔共59頁(yè);當(dāng)前第24頁(yè);編輯于星期三\15點(diǎn)36分d[2]d[1]d[0]Q的活動(dòng)記錄
P的活動(dòng)記錄主程序的活動(dòng)記錄
displaysptop(3)
displayd[1]d[0]R的活動(dòng)記錄Q的活動(dòng)記錄
P的活動(dòng)記錄主程序的活動(dòng)記錄
topsp(4)(0)主程序--->(1)P--->(2)Q--->(1)R全局display全局display:將調(diào)用者的display地址作為被調(diào)用者的全局display.本文檔共59頁(yè);當(dāng)前第25頁(yè);編輯于星期三\15點(diǎn)36分臨時(shí)單元內(nèi)情向量簡(jiǎn)單變量display形參單元形參個(gè)數(shù)全局display返回地址動(dòng)態(tài)鏈(老sp)
當(dāng)過程的層次為n,它的display為n+1個(gè)值。一個(gè)過程被調(diào)用時(shí),從調(diào)用過程的display表中自下向上抄錄n個(gè)SP值,再加上本層的SP值。全局display地址含display的活動(dòng)記錄連接數(shù)據(jù)sptop本文檔共59頁(yè);當(dāng)前第26頁(yè);編輯于星期三\15點(diǎn)36分例:下面是一個(gè)PASCAL程序:programpp;vark:integer;functionf(n:integer):integer;beginifn<0thenf:=1elsef:=n*f(n-1)end;begink:=f(10);end.當(dāng)?shù)诙危ㄟf歸地)進(jìn)入f后,整個(gè)運(yùn)行棧的內(nèi)容是什么?本文檔共59頁(yè);當(dāng)前第27頁(yè);編輯于星期三\15點(diǎn)36分棧頂寄存器T運(yùn)行棧S[T]調(diào)用語(yǔ)句及當(dāng)時(shí)T值基地址寄存器SP1動(dòng)態(tài)鏈DLsp=12返回地址RA30(參數(shù)個(gè)數(shù))41(display)5K(簡(jiǎn)單變量)T=5;f(10);6動(dòng)態(tài)鏈DL=1sp=67返回地址RA84(全局display)9110n本文檔共59頁(yè);當(dāng)前第28頁(yè);編輯于星期三\15點(diǎn)36分棧頂寄存器T運(yùn)行棧S[T]調(diào)用語(yǔ)句及當(dāng)時(shí)T值基地址寄存器SP111(display)126(display)T=12;f(9);13動(dòng)態(tài)鏈DL=6sp=1314返回地址RA1511(全局display)16117n181(display)1913(display)T=1920本文檔共59頁(yè);當(dāng)前第29頁(yè);編輯于星期三\15點(diǎn)36分
ProcedureA(m,n);integerm,n;
B1:beginrealz;arrayB[m:n];B2:beginreald,e; L3:2end;B4:beginarrayC[1:m];1B5:beginreale;L6:54end;end;L8:end;本文檔共59頁(yè);當(dāng)前第30頁(yè);編輯于星期三\15點(diǎn)36分分程序結(jié)構(gòu)的存儲(chǔ)
分配方案
處理分程序結(jié)構(gòu)存儲(chǔ)分配方案的一種簡(jiǎn)單辦法是,把分程序看成“無(wú)參過程”,它在哪里定義就在哪里被調(diào)用。因此,可以把處理過程的存儲(chǔ)辦法應(yīng)用到處理分程序中。但這種做法是極為低效的。一則,每逢進(jìn)入一個(gè)分程序,就照樣建立連接數(shù)據(jù)和DISPLAY表,這是不必要的。二則,當(dāng)從內(nèi)層分程序向外層轉(zhuǎn)移時(shí),可能同時(shí)要結(jié)束若干個(gè)分程序。本文檔共59頁(yè);當(dāng)前第31頁(yè);編輯于星期三\15點(diǎn)36分
按照過程處理辦法,意味著必須一層一層地通過“返回”來(lái)恢復(fù)所要到達(dá)的那個(gè)分程序的數(shù)據(jù)區(qū),但不能直接到達(dá)。例如:如果有一個(gè)從第5層分程序轉(zhuǎn)出到達(dá)第1層分程序的標(biāo)號(hào)L,雖然在第5層分程序工作時(shí)知道L所屬的層數(shù),我們極易從DISPLAY中獲得第1層分程序的活動(dòng)記錄基址(SP),但是怎么知道第1層分程序進(jìn)入時(shí)的TOP呢?唯一的辦法是從5,4,3和2各層順序退出。但這種辦法是很浪費(fèi)時(shí)間的。本文檔共59頁(yè);當(dāng)前第32頁(yè);編輯于星期三\15點(diǎn)36分
為了解決上述問題,可采取兩種措施。第一,對(duì)每個(gè)過程或分程序都建立有自己的棧頂指示器TOP,代替原來(lái)僅有過程的棧頂指示器,每個(gè)TOP的值保存在各自活動(dòng)記錄中。這樣,上述的第二個(gè)問題便可解決。第二,不把分程序看作“無(wú)參過程”,每個(gè)分程序享用包圍它的那個(gè)最近過程的DISPLAY。每個(gè)分程序都隸屬于某個(gè)確定的過程,分程序的層次是相對(duì)于它所屬的那個(gè)過程進(jìn)行編號(hào)的。本文檔共59頁(yè);當(dāng)前第33頁(yè);編輯于星期三\15點(diǎn)36分每個(gè)過程被當(dāng)作是0層分程序。而過程體分程序(假定是一個(gè)分程序)當(dāng)作是它所管轄的第1層分程序。這樣,每個(gè)過程的活動(dòng)記錄所含的內(nèi)容有:1.過程的TOP值,它指向過程活動(dòng)記錄的棧頂位置。2.連接數(shù)據(jù),共四項(xiàng):(1)老SP值;(2)返回地址;
(3)全局DISPAY地址;(4)調(diào)用時(shí)的棧頂單元地址,老TOP。本文檔共59頁(yè);當(dāng)前第34頁(yè);編輯于星期三\15點(diǎn)36分
3.參數(shù)個(gè)數(shù)和形式單元4.DISPAY表。5.過程所轄的各分程序的局部數(shù)據(jù)單元。對(duì)于每個(gè)分程序來(lái)說,它們包括:(1)分程序的TOP值。當(dāng)進(jìn)入分程序時(shí)它含現(xiàn)行棧頂?shù)刂?,以后,用?lái)定義棧的新高度(分程序的TOP值);(2)分程序的局部變量,數(shù)組內(nèi)情向量和臨時(shí)工作單元。本文檔共59頁(yè);當(dāng)前第35頁(yè);編輯于星期三\15點(diǎn)36分本文檔共59頁(yè);當(dāng)前第36頁(yè);編輯于星期三\15點(diǎn)36分B
Z
B1T
O本文檔共59頁(yè);當(dāng)前第37頁(yè);編輯于星期三\15點(diǎn)36分
數(shù)
組B
數(shù)
組B
e
dB22的TOPB的
內(nèi)
情
向
量B的
內(nèi)
情
向
量
z
zB1的TOPB1的TOPDISPLAYDISPLAY
形式單元
m,n
2
形式單元
m,n
2連
接
數(shù)
據(jù)連接
數(shù)
據(jù)A的TOPA的TOP
∶
∶
∶
∶
(c)(d)(c)數(shù)組B分配之后;
(d)進(jìn)入分程序B22;本文檔共59頁(yè);當(dāng)前第38頁(yè);編輯于星期三\15點(diǎn)36分本文檔共59頁(yè);當(dāng)前第39頁(yè);編輯于星期三\15點(diǎn)36分參數(shù)傳遞
傳值傳地址傳名傳結(jié)果本文檔共59頁(yè);當(dāng)前第40頁(yè);編輯于星期三\15點(diǎn)36分
(1)programreference(input,output);(2)vara,b:integer;(3)procedureswap(varx,y:integer);(4)vartemp:integer;(5)begin(6)temp:=x;(7)x:=y;(8)y:=temp(9)end;(10)begin(11)a:=1;b:=2;(12)swap(a,b);(13)writeln(‘a(chǎn)=‘,a);writeln(‘b=‘,b)(14)end.
帶有過程swap的PASCAL程序本文檔共59頁(yè);當(dāng)前第41頁(yè);編輯于星期三\15點(diǎn)36分
傳地址(變量參數(shù))例如:過程swap(varx,y:integer);swap(a,b);(a,b為調(diào)用時(shí)的實(shí)參)調(diào)用結(jié)果a,b的值被改變。傳值(值調(diào)用)特點(diǎn)是對(duì)形式參數(shù)的任何運(yùn)算不影響實(shí)參的值。例如:過程swap(x,y:integer);swap(a,b);其結(jié)果:a,b調(diào)用前的值不改變。本文檔共59頁(yè);當(dāng)前第42頁(yè);編輯于星期三\15點(diǎn)36分傳值的實(shí)現(xiàn)(call-by-value)1.形式參數(shù)當(dāng)作過程的局部變量處理,即在被調(diào)過程的活動(dòng)記錄中開辟了形參的存儲(chǔ)空間,這些存儲(chǔ)位置即是我們所說的形式單元(用以存放實(shí)參)。2.調(diào)用過程計(jì)算實(shí)參的值,并將其放在對(duì)應(yīng)形式單元開辟的空間中。3.被調(diào)用過程執(zhí)行時(shí),就像使用局部變量一樣使用這些形式單元。本文檔共59頁(yè);當(dāng)前第43頁(yè);編輯于星期三\15點(diǎn)36分procedureswap(x,y:integer);vartemp:integer;begintemp:=x;x:=y;y:=tempend;
調(diào)用swap(a,b)過程將不會(huì)影響a和b的值。其結(jié)果等價(jià)于執(zhí)行下列運(yùn)算:x:=a;y:=b;temp:=x;x:=y;y:=temp本文檔共59頁(yè);當(dāng)前第44頁(yè);編輯于星期三\15點(diǎn)36分傳地址的實(shí)現(xiàn)(call-by-reference)(call-by-address)(call-by-location)把實(shí)在參數(shù)的地址傳遞給相應(yīng)的形參,即調(diào)用過程把一個(gè)指向?qū)崊⒌拇鎯?chǔ)地址的指針傳遞給被調(diào)用過程相應(yīng)的形參:3、目標(biāo)代碼中,被調(diào)用過程對(duì)形參的引用變成對(duì)傳遞給被調(diào)用過程的指針的間接引用2、實(shí)在參數(shù)是無(wú)左值的表達(dá)式----計(jì)算值,放入一存儲(chǔ)單元,傳此存儲(chǔ)單元地址1、實(shí)在參數(shù)是一個(gè)名字,或具有左值的表達(dá)式----傳遞左值本文檔共59頁(yè);當(dāng)前第45頁(yè);編輯于星期三\15點(diǎn)36分procedureswap(varx,y:integer);vartemp:integer;begintemp:=x;x:=y;y:=tempend;
調(diào)用swap(i,a[i])其結(jié)果等價(jià)于執(zhí)行下列運(yùn)算:1、把I和a[i]的地址分別放到x和y相應(yīng)的單元a1,a22、(temp:=x;)temp的內(nèi)容置為a1所指單元中存的內(nèi)容3、(x:=y;)a1所指單元的內(nèi)容置為a2所指單元值4、(y:=temp)a2所指單元的內(nèi)容置為temp的值本文檔共59頁(yè);當(dāng)前第46頁(yè);編輯于星期三\15點(diǎn)36分
(1)swap(x,y)(2)int*x,*y;(3){inttemp;(4)temp=*x;*x=*y;*y=temp;(5)}(6)main()(7){inta=1,b=2;(8)swap(&a,&b);(9)printf(“aisnow%d,bisnow%d\n”,a,b);(10)}
在一個(gè)值調(diào)用過程中使用指針的C程序在C程序中無(wú)傳地址所以用指針實(shí)現(xiàn)。本文檔共59頁(yè);當(dāng)前第47頁(yè);編輯于星期三\15點(diǎn)36分過程調(diào)用的四元式序列
Scallid(<arglist>)<arglist><arglist>,E<arglist>EparT1parT2parTncallid,n本文檔共59頁(yè);當(dāng)前第48頁(yè);編輯于星期三\15點(diǎn)36分過程作為參數(shù)傳遞三種環(huán)境:詞法環(huán)境傳遞環(huán)境活動(dòng)環(huán)境本文檔共59頁(yè);當(dāng)前第49頁(yè);編輯于星期三\15點(diǎn)36分
programparam(input,output);procedureb(functionh(n:integer):integer);(*)varm:integer;beginm:=3;writeln(h(2))end;procedurec;(*)varm:integer;functionf(n:integer):integr;(&)beginf:=m+nend{f};beginm:=0;b(f)end{c}begincend.
本文檔共59頁(yè);當(dāng)前第50頁(yè);編輯于星期三\15點(diǎn)36分(1)programparam(input,output);(2)procedureb(functionh(n:integer):integer);(3)beginwriteln(h(2))end;(4)procedurec;(5)varm:integer;(6)functionf(n:integer):integr;(7)beginf:=m+nend{f};(8)beginm:=0;b(f)end{c};(9)begin(10)c(11)end
圖10-27嵌套過程作為參數(shù)傳遞本文檔共59頁(yè);當(dāng)前第51頁(yè);編輯于星期三\15點(diǎn)36分本文檔共59頁(yè);當(dāng)前第52頁(yè);編輯于星期三\15點(diǎn)36分各種數(shù)據(jù)對(duì)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度師徒技藝傳承合同范本6篇
- 2024年知識(shí)產(chǎn)權(quán)許可合同的履行與擔(dān)保
- 2025常用的汽車租賃合同
- 2024年大數(shù)據(jù)分析軟件產(chǎn)品定制開發(fā)與許可合同3篇
- 培訓(xùn)股合同范例
- 商洛職業(yè)技術(shù)學(xué)院《人體生物力學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 合同范例保證書
- 混凝土大體積施工方案
- 陜西中醫(yī)藥大學(xué)《水庫(kù)調(diào)度》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024至2030年脫水洋蔥絲項(xiàng)目投資價(jià)值分析報(bào)告
- 金融理論與政策(華南農(nóng)業(yè)大學(xué))-中國(guó)大學(xué)MOOC答案2023版
- 2024年《論教育》全文課件
- 節(jié)能改造合同協(xié)議
- 國(guó)家開放大學(xué)專科《法理學(xué)》(第三版教材)形成性考核試題及答案
- (正式版)SHT 3158-2024 石油化工管殼式余熱鍋爐
- MOOC 創(chuàng)業(yè)基礎(chǔ)-暨南大學(xué) 中國(guó)大學(xué)慕課答案
- (2024年)面神經(jīng)炎課件完整版
- 馬工程版《中國(guó)經(jīng)濟(jì)史》各章思考題答題要點(diǎn)及詳解
- 排序算法集成-杉杉
- 產(chǎn)品報(bào)價(jià)審批表
- 基于s7200狹窄隧道汽車雙向行的plc控制
評(píng)論
0/150
提交評(píng)論