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

正文內容

第六章運行時存儲空間的組織和管理-wenkub.com

2025-07-29 13:21 本頁面
   

【正文】 movl 8(%ebp),%edx 取 i到 寄存器 func(j)。 decl %edx i – 1 } movl %edx,4(%ebp) i – 1 ? j movl 4(%ebp),%eax pushl %eax 把實參 j的值壓棧 call func 函數(shù)調用 addl $4,%esp 恢復棧頂指針 L1: leave 即 mov ebp, esp。 pop ebp ret 即 pop eip(下條指令地址 ) . . . . . . ebp esp 參數(shù) i 返址 例 題 2 func(i) func: long i。 pushl %ebp 老的基地址指針壓棧 { movl %esp,%ebp修改 基地址指針 long j。 subl $4,%esp 為 j分配空間 j= i 1。 movl 8(%ebp),%edx 取 i到 寄存器 func(j)。 decl %edx i – 1 } movl %edx,4(%ebp) i – 1 ? j movl 4(%ebp),%eax pushl %eax 把實參 j的值壓棧 call func 函數(shù)調用 addl $4,%esp 恢復棧頂指針 L1: leave 即 mov ebp, esp。 } 例 題 2 func(i) func: long i。 } 例 題 2 func(i) long i。 } 例 題 1 .data | .align 4 .align 4 | .type ,object .type aa,object | .size ,4 .size aa,4 | : aa: | .long 30 .long 10 | .text .globl bb | .align 4 .align 2 | .globl func .type bb,object | func: .size bb,2 | . . . bb: | movw $40,2(%ebp) .value 20 | . . . static long aa = 10。 } 例 題 1 .data | .align 4 .align 4 | .type ,object .type aa,object | .size ,4 .size aa,4 | : aa: | .long 30 .long 10 | .text .globl bb | .align 4 .align 2 | .globl func .type bb,object | func: .size bb,2 | . . . bb: | movw $40,2(%ebp) .value 20 | . . . static long aa = 10。 } 例 題 1 .data | .align 4 .align 4 | .type ,object .type aa,object | .size ,4 .size aa,4 | : aa: | .long 30 .long 10 | .text .globl bb | .align 4 .align 2 | .globl func .type bb,object | func: .size bb,2 | . . . bb: | movw $40,2(%ebp) .value 20 | . . . static long aa = 10。 } 例 題 1 .data | .align 4 .align 4 | .type ,object .type aa,object | .size ,4 .size aa,4 | : aa: | .long 30 .long 10 | .text .globl bb | .align 4 .align 2 | .globl func .type bb,object | func: .size bb,2 | . . . bb: | movw $40,2(%ebp) .value 20 | . . . static long aa = 10。 } 例 題 1 .data | .align 4 .align 4 | .type ,object .type aa,object | .size ,4 .size aa,4 | : aa: | .long 30 .long 10 | .text .globl bb | .align 4 .align 2 | .globl func .type bb,object | func: .size bb,2 | . . . bb: | movw $40,2(%ebp) .value 20 | . . . static long aa = 10。 } 例 題 1 .data | .align 4 .align 4 | .type ,object .type aa,object | .size ,4 .size aa,4 | : aa: | .long 30 .long 10 | .text .globl bb | .align 4 .align 2 | .globl func .type bb,object | func: .size bb,2 | . . . bb: | movw $40,2(%ebp) .value 20 | . . . static long aa = 10。 根據(jù)所生成的匯編程序來解釋程序中四個變 量的存儲分配 、 生存期 、 作用域和置初值方式等方面 的區(qū)別 static long aa = 10。 char name[10000][20]。 x := y。 var temp: integer。 temp := x。 x := y。 x := y。 small。 show。 var r: real。 var r: real。 writeln。 show end。 begin write(r: 5: 3) end。 small。 show。 var r: real。 var r: real。 writeln。 show end。 begin write(r: 5: 3) end。 small。 show。 var r: real。 var r: real。 writeln。 show end。 begin write(r: 5: 3) end。 writeln end. dynamic show small small show show show 非局部名字的訪問 實現(xiàn)動態(tài)作用域的方法 ? 深訪問 – 用控制鏈搜索運行棧 , 尋找包含該非局部名字的第一個活動記錄 ? 淺訪問 – 為每個名字 在 靜態(tài)分配的存儲空間 中保存它的當前值 – 當過程 p的新活動出現(xiàn)時 , p的局部名字 n使用在靜態(tài)數(shù)據(jù)區(qū)分配給 n的存儲單元 。 small。 begin r := 。 procedure show。 show。 begin 靜態(tài)作用域 r := 。 procedure small。 writeln end. dynamic show small small show show show 非局部名字的訪問 program dynamic(input, output)。 small。 begin r := 。 procedure show。 begin writeln (g(2)) end。 begin return m+n end。( 過程作為返回值 ) var f: function (integer): integer。 procedure b (g: function (integer): integer)。 function addm (n: integer): integer。 begin c end. b調用 f時,用傳遞過來的訪問鏈來建立 f的訪問鏈 訪 問 鏈 訪 問 鏈 param c m b f, 訪 問 鏈 b 非局部名字的訪問 program ret (input, output)。 var m: integer。 b(f) end {c}。 procedure c。 begin m := 0。( 過程作為參數(shù) ) procedure b(function h(… begin writeln(h(2)) end 。 begin f := m+n end {f}。 begin writeln(h(2)) end 。 | return amp。 top_sp的值在此過程中被改變 返回值和參數(shù) top_sp base_sp 臨時數(shù)據(jù)局部數(shù)據(jù) 控制鏈 和保存的機器狀態(tài) ? ? ? 返回值和參數(shù) top_sp 全局棧式存儲分配 過程 p調用過程 q的調用序列 (2) p把返回地址和當前 base_sp的值存入 q的活動記錄中,建立 q的訪問鏈,增加 base_sp的值 返回值和參數(shù) top_sp base_sp 臨時數(shù)據(jù)局部數(shù)據(jù) 控制鏈 和保存的機器狀態(tài) ? ? ? 返回值和參數(shù) 控制鏈和返回地址 base_sp top_sp 全局棧式存儲分配 過程 p調用過程 q的調用序列 (3) q保存寄存器的值和其它機器狀態(tài)信息 返回值和參數(shù) top_sp base_sp 臨時數(shù)據(jù)局部數(shù)據(jù) 控制鏈 和保存的機器狀態(tài) ? ? ? 返回值和參數(shù) 控制鏈 和保存的機器狀態(tài) 全局棧式存儲分配 過程 p調用過程 q的調用序列 (4) q根據(jù)局部數(shù)據(jù)域和臨時數(shù)據(jù)域的大小增加 top_sp的值,初始化它的局部數(shù)據(jù),并開始執(zhí)行過程體 臨時數(shù)據(jù)局部數(shù)據(jù) 返回值和參數(shù) 返回值和參數(shù) ? ? ? 控制鏈 和保存的機器狀態(tài) top_sp base_sp 臨時數(shù)據(jù)局部數(shù)據(jù) 控制鏈 和保存的機器狀態(tài) ? ? ? 全局棧式存儲分配 調用者 p和被調用者 q之間的任務劃分 被調用者 q的責任 調用者 p的責任 調用者 p的 活動記錄 被調用者 q的活動記錄 臨時數(shù)據(jù)局部數(shù)據(jù) 返回值和參數(shù) 返回值和參數(shù) ? ? ? 控制鏈 和保存的機器狀態(tài) top_sp base_sp 棧 增 長 方 向 臨時數(shù)據(jù)局部數(shù)據(jù) 控制鏈 和保存的機器狀態(tài) ? ? ? 全局棧式存儲分配 過程 p調用過程 q的返回序列 臨時數(shù)據(jù)局部數(shù)據(jù) 返回值和參數(shù) 返回值和參數(shù) ? ? ? 控制鏈 和保存的機器狀態(tài) top_sp base_sp 棧 增 長 方 向 臨時數(shù)據(jù)局部數(shù)據(jù) 控制鏈 和保存的機器狀態(tài) ? ? ? 全局棧式存儲分配 過程 p
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1