第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

我想問一下“保存現(xiàn)場”是什么意思啊?它保存了哪些東西呢?

我想問一下“保存現(xiàn)場”是什么意思???它保存了哪些東西呢?

C++
ABOUTYOU 2023-02-10 22:18:50
書上是這樣寫的“程序在執(zhí)行過程中,如果遇到了對其他函數(shù)的調(diào)用,則暫停當(dāng)前函數(shù)的執(zhí)行,保存下一條指令的地址(即返回地址,作為從子函數(shù)返回后繼續(xù)執(zhí)行的入口點(diǎn)),并保存現(xiàn)場,然后轉(zhuǎn)到子函數(shù)的入口地址,執(zhí)行子函數(shù)?!?
查看完整描述

3 回答

?
蠱毒傳說

TA貢獻(xiàn)1895條經(jīng)驗(yàn) 獲得超3個(gè)贊

C++中函數(shù)調(diào)用的執(zhí)行過程有六步:

1、參數(shù)傳遞:將函數(shù)參數(shù)壓棧:mov eax,dword ptr [n] ;(n為參數(shù)變元)。

2、操作:將幀指針壓入棧中:push ebp;使得幀指針等于棧指針:mov ebp,esp;使棧指針自減,自減得到的內(nèi)存地址應(yīng)當(dāng)能夠(足夠)用來存儲被調(diào)用函數(shù)的本地狀態(tài):sub esp,0CCh。

3、傳入保存狀態(tài):push ebx ;保存ebx寄存器的值;push esi ;保存esi寄存器的值;push edi ;保存edi寄存器的值。

4、裝入edi:lea edi,[ebp-0CCh] ;0cch是當(dāng)前活動記錄的大小。

5、恢復(fù)傳入的保存狀態(tài):00411417 pop edi;00411418 pop esi;pop ebx棧指針上移,恢復(fù)空間;add esp,0CCh。

6、函數(shù)返回釋放空間:使棧指針等于幀指針: mov esp,ebp;從棧中將舊的幀指針彈出: pop ebp;返回:ret。 


查看完整回答
反對 回復(fù) 2023-02-15
?
弒天下

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超8個(gè)贊

怎么說的跟中斷似的... 

函數(shù)調(diào)用就好像堆積木一樣。調(diào)用方調(diào)用一個(gè)函數(shù)的時(shí)候,被調(diào)用的函數(shù)是直接摞在調(diào)用方上面的;被調(diào)用的函數(shù)返回的時(shí)候也就好像直接把放在上面的積木拿開。 

另外“現(xiàn)場”是不會被保存的。這不是中斷,函數(shù)返回后CPU的狀態(tài)不能保證和調(diào)用前相同。只是函數(shù)使用的棧內(nèi)存因?yàn)榛ゲ幌喔?,所以一般不會被改變(除非你主動去改?/p>

查看完整回答
反對 回復(fù) 2023-02-15
?
瀟湘沐

TA貢獻(xiàn)1816條經(jīng)驗(yàn) 獲得超6個(gè)贊

保存現(xiàn)場,即保存因?yàn)榍懊嬷赶蛘Z句所存下的數(shù)據(jù)等信息,不保存的話,當(dāng)指向完子函數(shù)會來,程序就沒有辦法往下執(zhí)行

查看完整回答
反對 回復(fù) 2023-02-15
  • 3 回答
  • 0 關(guān)注
  • 176 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號