版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1,有關(guān)“過程調(diào)用”的練習(xí),假設(shè)P為調(diào)用過程,Q為被調(diào)用過程,程序在IA-32處理器上執(zhí)行,以下有關(guān)過程調(diào)用的敘述中,錯誤的是( )。 A. C語言程序中的函數(shù)調(diào)用就是過程調(diào)用 B. 從P傳到Q的實參無需重新分配空間存放 C. 從P跳轉(zhuǎn)到Q執(zhí)行應(yīng)使用CALL指令 D. 從Q跳回到Q執(zhí)行應(yīng)使用RET指令,2,有關(guān)“過程調(diào)用”的練習(xí),假設(shè)P為調(diào)用過程,Q為被調(diào)用過程,程序在IA-32處理器上執(zhí)行,以下是C語言程序中過程調(diào)用所涉及的操作: 過程Q保存P的現(xiàn)場,并為非靜態(tài)局部變量分配空間 過程P將實參存放到Q能訪問到的地方 過程P將返回地址存放到特定處,并跳轉(zhuǎn)到Q執(zhí)行 過程Q取出返回地址,并跳轉(zhuǎn)回到過
2、程P執(zhí)行 過程Q恢復(fù)P的現(xiàn)場,并釋放局部變量所占空間 執(zhí)行過程Q的函數(shù)體 過程調(diào)用的正確執(zhí)行步驟是( )。 A. B. C. D.,3,以下是有關(guān)IA-32的過程調(diào)用的敘述,錯誤的是( )。 A. 在過程中通常先使用被調(diào)用者保存寄存器 B. 每個非葉子過程都有一個棧幀,其大小為16B的倍數(shù) C. EBP寄存器中的內(nèi)容指向?qū)?yīng)棧幀(stack frame)的底部 D. 每個棧幀底部單元中存放其調(diào)用過程的EBP內(nèi)容 以下是有關(guān)IA-32的過程調(diào)用所使用的棧和棧幀的敘述,錯誤的是( )。 A. 每進行一次過程調(diào)用,用戶棧從高地址向低地址增長出一個棧幀 B. 從被調(diào)用過程返回調(diào)用過程之前,被調(diào)用過程會
3、釋放自己的棧幀 C. 只能通過將棧指針ESP作為基址寄存器來訪問用戶棧中的數(shù)據(jù) D. 過程嵌套調(diào)用深度越深,棧中棧幀個數(shù)越多,嚴重時會發(fā)生棧溢出,有關(guān)“過程調(diào)用”的練習(xí),4,有關(guān)“過程調(diào)用”的練習(xí),以下是有關(guān)C程序的變量作用域和生存期的敘述,錯誤的是( )。 A. 靜態(tài)(static型)變量和非靜態(tài)局部變量都分配在對應(yīng)棧幀中 B. 因為非靜態(tài)局部變量被分配在棧中,所以其作用域僅在過程體內(nèi) C. 非靜態(tài)局部變量可以與全局變量同名,因為它們被分配在不同存儲區(qū) D. 不同函數(shù)中非靜態(tài)局部變量可以同名,因為它們被分配在不同棧幀中,以下有關(guān)遞歸過程調(diào)用的敘述中,錯誤的是( )。 A. 每次遞歸調(diào)用都會額
4、外執(zhí)行多條指令,因而時間開銷大 B. 每次遞歸調(diào)用都會生成一個新的棧幀,因而空間開銷大 C. 每次遞歸調(diào)用在棧幀中保存的返回地址都不相同 D. 遞歸過程第一個參數(shù)的有效地址為Rebp+8,5,有關(guān)“過程調(diào)用”的練習(xí),以下是一個C語言程序代碼: int add(int x, int y) return x+y; int caller( ) int t1=100 ; int t2=200; int sum=add(t1, t2); return sum; 以下關(guān)于上述程序代碼在 IA-32上執(zhí)行的敘述中,錯誤的是( )。 A. 變量t1、t2和sum被分配在caller函數(shù)的棧幀中 B. 傳遞參數(shù)
5、時t2和t1的值從高地址到低地址依次存入棧中 C. 入口參數(shù)t1和t2的值被分配在add函數(shù)的棧幀中 D. add函數(shù)返回時返回值存放在EAX寄存器中,6,有關(guān)“過程調(diào)用”的討論,為什么以下程序輸出結(jié)果是x=-1217400844而不是x=100?在你的機器上執(zhí)行結(jié)果是什么?每次執(zhí)行結(jié)果都一樣嗎?反匯編后的機器級代碼如何支持你的分析? int x=100; void main ( ) int x; printf(“x=%dn”, x);,稍作修改后輸出結(jié)果是什么,7,以下是網(wǎng)上的一個帖子,請將程序的可執(zhí)行文件反匯編(基于IA-32),并對匯編代碼進行分析以正確回答該貼中的問題。 該貼給出的結(jié)果是在Linux還是Windows上得到的?為什么,有關(guān)“過程調(diào)用”的討論,8,有關(guān)“過程調(diào)用”的討論,以下是一段C語言代碼: #include main() double a = 10; printf(a = %dn, a); 在你的機器上執(zhí)行結(jié)果是什么? 請根據(jù)匯編指令解釋你的結(jié)果,當(dāng)a說明成float類型又怎樣呢,百度招聘題,如果改成
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 頂撞領(lǐng)導(dǎo)檢討書范文
- 投標財務(wù)狀況承諾書
- 隊長工作計劃5篇
- 施工組織設(shè)計-宜川至瓦子街高速公路QL2合同段施工組織設(shè)計
- DB12-T 602-2023 城市軌道交通運營安全管理規(guī)范
- 甘肅省定西市(2024年-2025年小學(xué)五年級語文)統(tǒng)編版期中考試((上下)學(xué)期)試卷及答案
- 四川省涼山彝族自治州(2024年-2025年小學(xué)五年級語文)人教版小升初模擬(下學(xué)期)試卷及答案
- 2023年高效沼氣脫硫設(shè)備投資申請報告
- 2024年醫(yī)學(xué)診斷服務(wù)項目資金籌措計劃書代可行性研究報告
- 高二體育課與健康教案集
- 勞務(wù)施工組織方案 勞務(wù)施工組織設(shè)計(八篇)
- 鐵路運輸調(diào)度指揮
- GB/T 3293.1-1998鞋號
- GB/T 31489.1-2015額定電壓500 kV及以下直流輸電用擠包絕緣電力電纜系統(tǒng)第1部分:試驗方法和要求
- 建設(shè)工程企業(yè)資質(zhì)改革措施表2020
- DV-PV培訓(xùn)課件:設(shè)計驗證和生產(chǎn)確認
- 五大領(lǐng)域教學(xué)法(課堂PPT)
- 坐骨神經(jīng)痛及治療課件
- 數(shù)控車床編程基本學(xué)習(xí)培訓(xùn)課件
- 福建省福州市長樂區(qū)2022-2023學(xué)年八年級上學(xué)期期中英語試題(含答案解析)
- 部編版語文教材全套目錄小學(xué)到高中(2022年)
評論
0/150
提交評論