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

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

關(guān)于IL中Dup指令的疑問

關(guān)于IL中Dup指令的疑問

翻閱古今 2018-12-13 04:01:02
看了IL手冊(cè),手冊(cè)對(duì)Dup的解釋為:復(fù)制計(jì)算堆棧上當(dāng)前最頂端的值,然后將副本推送到計(jì)算堆棧上。如果堆棧上有一個(gè)數(shù),頂層為1,執(zhí)行Dup指令后會(huì)發(fā)生什么?IL_0001:    ldloc.0    // 將局部變量表的值5推送到計(jì)算堆棧,此時(shí)計(jì)算堆棧最頂端的值為5IL_0002     dup      // 按手冊(cè)意思,將5的副本再次推送到堆棧,那豈不是說(shuō)此時(shí)堆棧有兩個(gè)5?IL_0003:    ldc.i4.1    // 將整型數(shù)1推送到堆棧IL_0004:    add    // 執(zhí)行加操作,  5 + 1 = 6IL_0005:    stloc.0    // 將結(jié)果存儲(chǔ)到局部變量表不太理解計(jì)算堆棧的概念
查看完整描述

2 回答

?
開滿天機(jī)

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

與IL 指令相關(guān)的三個(gè)概念 :

1 Managed Heap 

2 Evaluation Stack

3 Call Stack

只有Evaluation Stack 是棧取數(shù)據(jù)時(shí)是根據(jù)棧的特點(diǎn),先進(jìn)后出,其它兩個(gè)都不是棧,可以不按順序取值 

Dup根據(jù)IL指令的解釋,是復(fù)制一份評(píng)估棧(Evaluation Stack)上的值并壓入評(píng)估棧中,

根據(jù)你的問題 如果評(píng)估棧中最頂端的值為1 那執(zhí)行Dup指令 則是將1 先復(fù)制一份,然后把副本的1壓入評(píng)估棧中


查看完整回答
反對(duì) 回復(fù) 2018-12-18
  • 2 回答
  • 0 關(guān)注
  • 754 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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