freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

目標程序運行時的存儲組織概論(ppt54頁)(存儲版)

2025-03-13 13:07上一頁面

下一頁面
  

【正文】 y :=b; temp :=x; x :=y; y :=temp 傳地址(變量參數(shù) callbyaddress 、 callbylocation 、 call by reference ) 例如:過程 swap(var x,y:integer)。 (4) temp=*x。 除了實參是過程的情況外,還有實參為數(shù)組的情況,實參為標號的情況以及實參為形式參數(shù)的情況。 ? (8)begin m := 0。 ? (6) function f(n:integer):integr。 (10)} 在一個值調(diào)用過程中使用指針的 C程序,在 C程序中無傳地址所以用指針實現(xiàn)。) a1所指單元 的內(nèi)容置為 a2所指單元值 4( y :=temp) a2所指單元 的內(nèi)容置為 temp的 值 (1)swap(x,y) (2)int *x,*y。 begin temp:=x。writeln(‘b=‘,b) (14)end. 帶有過程 swap的 PASCAL程序 傳值(值調(diào)用 callbyvalue) 特點是對形式參數(shù)的任何運算不影響實參的值。 (4) var temp:integer。 (2) var x:integer。而過程體分程序(假定是一個分程序)當作是它所管轄的第 1層分程序。 例如:如果有一個從第 5層分程序轉(zhuǎn)出到達第 1層分程序的標號 L,雖然在第 5層分程序工作時知道 L所屬的層數(shù),我們極易從 DISPLAY中獲得第 1層分程序的活動記錄基址( SP),但是怎么知道第 1層分程序進入時的 TOP呢?唯一的辦法是從 5,4,3和 2各層順序退出。 end。 integer m,n。如果該程序的某次執(zhí)行順序為: sort→quicksort→quicksort→partition→exchange… 即主程序 (最外層過程 )sort開始執(zhí)行 ,繼而進入過程quicksort,而又一次進入過程 quicksort,接著進入過程 partition,進入過程 exchange…。 //quicksort 的過程體 (20) begin?end{sort}. //sort 的例程體 圖 具有嵌套過程的 PASCAL程序 圖 PASCAL程序中過程定義的嵌套情況如下: sort readarray exchange quicksort partition 局部變量 a,x 局部變量 k,v 過程 quicksort的活動記錄 過程 sort的活動記錄 圖 存儲棧布局 記錄下列信息: 可以引用過程 sort的局部變量 關鍵技術:解決對非局部量的引用(存?。?。 //exchange 的過程體 (10) end{exchange}。 (3) x: integer。 TOP? 臨時工作單元 局部簡單變量 局部數(shù)組的內(nèi)情向量 返回地址 實參 (形式單元) SP? 參數(shù)個數(shù) 控制鏈 (老 SP) 圖 無嵌套定義 的過程活動記錄內(nèi)容 常常使用兩個指針指示棧最頂端的數(shù)據(jù)區(qū),一個稱為 SP,一個稱為 TOP。 proc Q …… end Q。并不是所有語言需要該信息。 上述三種分配策略各有所長??紤]插入方便,可以把所歸還的塊插在 available所指的塊之前,然后 available指向新歸還的塊。 這里主要問題是,我們必須調(diào)整運行程序?qū)Ω髡加脡K的全部引用點。通常使用一種稱為堆式的動態(tài)存儲分配方案。 若一個數(shù)組所需的存儲空間的大小在編譯時就已知道,則稱它為確定(靜態(tài))數(shù)組,否則稱為可變(動態(tài))數(shù)組。 目標代碼區(qū) code 靜態(tài)數(shù)據(jù)區(qū) static 棧 Stack 堆 heap 圖 目標程序運行時存儲區(qū)的典型劃分 數(shù)據(jù)空間 ?所謂數(shù)據(jù)空間的分配,本質(zhì)上看,是將程序中的每個名字與一個存儲位置關聯(lián)起來,該存儲位置用以保存名字的值。 數(shù)據(jù)空間 應包括: ? 用戶定義的各種類型的數(shù)據(jù)對象(變量和常數(shù))所 需的存儲空間; ? 作為保留中間結(jié)果和傳遞參數(shù)的臨時工作單元; ? 調(diào)用過程時所需的連接單元; ? 組織輸入 /輸出所需的緩沖區(qū)。 ?源語言的結(jié)構(gòu)特點、源語言的數(shù)據(jù)類型、源語言中決定名字作用域的規(guī)則等因素影響存儲空間的管理和組織的復雜程度,決定數(shù)據(jù)空間分配的基本策略。 過程所需的數(shù)據(jù)空間包括兩部分: ① 生存期在本過程這次活動中的數(shù)據(jù)對象; ② 用以管理過程活動的記錄信息 。但這種做法較麻煩。 但是,我們?nèi)绾沃滥男K運行時在使用或者目前很少使用呢?即便知道了,一經(jīng)收回后運行程序在某個時候又要用它時又應該怎么辦呢? 要使用廢品回收技術,除了在語言上要有明確的具體限制外,還需要有特別的硬件措施,否則回收幾乎不能實現(xiàn)。按照用戶的需要,分配時先是從一個整塊里分割出滿足需要的一小塊,以后,歸還時,如果新歸還的塊能和現(xiàn)有的空間能合并,則合并成一塊;如果不能和任何空閑塊合并,則可以把空閑塊鏈成一個鏈表。過程的活動記錄是一段連續(xù)的存儲區(qū),用以存放過程的一次執(zhí)行所需要的動態(tài)信息,這些信息可以如圖 。當然在實際編譯程序中,也常常使用機器寄存器傳遞實參。 例如圖 ,若主程序調(diào)用了過程Q, Q又調(diào)用了 R,在 R進入運行后的存儲結(jié)構(gòu)如圖( a)所示。這里把控制鏈也稱作老 SP,即調(diào)用該過程的那個過程的最新活動記錄的起點。 (6) begin?a?end{readarray}。 (13) function partition(y,z:integer):integer。 2.
點擊復制文檔內(nèi)容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1