綁定帳號登入

Android 台灣中文網

打印 上一主題 下一主題

[求助] CIL Byte Code

 關閉 [複製連結] 查看: 1120|回覆: 4|好評: 0
跳轉到指定樓層
樓主
kuoyuwu | 收聽TA | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
發表於 2014-12-8 11:01

馬上加入Android 台灣中文網,立即免費下載應用遊戲。

您需要 登錄 才可以下載或查看,沒有帳號?註冊

x
各位版大神人~ 小弟看了一陣子的 CIL 了

有個疑問找了很久都找不到如下舉例:

    IL_0069:  /* 6F   | (06)000DC2       */ callvirt   instance bool Floor::get_isCleared()
                                 ^^^
06 為呵要括號?

如有任何參考資料也請提供下小弟研讀~
「用Android 就來APK.TW」,快來加入粉絲吧!
Android 台灣中文網(APK.TW)

評分

參與人數 1碎鑽 +1 幫助 +3 收起 理由
crazy411sam + 1 + 3 論壇就是要有像樓主這樣用心的人.

查看全部評分

收藏收藏 分享分享 分享專題
用Android 就來Android 台灣中文網(https://apk.tw)
回覆

使用道具 舉報

沙發
manleong20 | 收聽TA | 只看該作者
發表於 2014-12-8 14:02
由 手機網頁 發佈
你是说get_iscleared() 吗? 哪个是一个检测通关以否的函数

評分

參與人數 2碎鑽 +4 幫助 +2 收起 理由
kenny1105 + 2 + 1 很給力!
crazy411sam + 2 + 1 您的用心回復提供不錯的參考價值喔!.

查看全部評分

用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

板凳
 樓主| kuoyuwu | 收聽TA | 只看該作者
發表於 2014-12-9 09:41
manleong20 發表於 2014-12-8 14:02
你是说get_iscleared() 吗? 哪个是一个检测通关以否的函数

6F   | (06)000DC2 ==> 那為何 (06) 要括號? 是函數回傳值 ?
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

地板
ASOSO | 收聽TA | 只看該作者
發表於 2014-12-9 12:46
(06) 是基本指令 ldftn <method>
將方法指標推入堆疊。
後面 000DC2 則是該 ldftn 與指標 offset 值,
用 WinHex 就能看的非常清楚。
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

5
 樓主| kuoyuwu | 收聽TA | 只看該作者
發表於 2014-12-9 17:46
ASOSO 發表於 2014-12-9 12:46
(06) 是基本指令 ldftn
將方法指標推入堆疊。
後面 000DC2 則是該 ldftn 與指標 offset 值,

ASOSO大大~ 那我這樣解釋不知道對不對...

6F: callvirt <method> - Call an object method
而這個 callvirt method 再次執行基本指令 (06): ldftn <method>
Push a pointer(000DC2) to method on the stack.

執行完畢後 stack top 就是 bool 值然後被 pop 出來...

不知這樣理解對嗎 ?
用Android 就來Android 台灣中文網(https://apk.tw)
回覆 支持 反對

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則