分析易語言內(nèi)嵌匯編取變量指針的示例
經(jīng)本人研究內(nèi)嵌匯編不能取自定義類型(成員非4字節(jié),取來的是對(duì)齊結(jié)構(gòu)的指針,比如成員為字節(jié)型分配4個(gè)字節(jié)),和非小數(shù)和整數(shù),文本型數(shù)組不可以取指針,其它的都可以
要注意的是易的子程序前有EBP入棧操作,所以要有出棧操作才行
這是我寫的取整數(shù)型指針的例子(字節(jié)型,短整數(shù)型,小數(shù)型,日期時(shí)間型,雙精度小數(shù)型都通用,注意參數(shù)要為參考):
.版本 2
.支持庫 spec
.子程序 取整數(shù)型指針, 整數(shù)型, 公開
.參數(shù) 整數(shù), 整數(shù)型, 參考
'push ebp <------------這兩句已經(jīng)是易原有的
'mov ebp, esp置入代碼 ({ 139, 69, 8, 201, 194, 4, 0 })
' mov eax, dword ptr [ebp+08]
' leave <------------賦值給ESP,從堆棧中彈出到EBP
' ret 0004
返回 (0)
取文本指針的例子:
.版本 2
.支持庫 spec
.子程序 取文本型指針, 整數(shù)型, 公開
.參數(shù) 文本, 文本型置入代碼 ({ 139, 69, 8, 139, 0, 201, 194, 4, 0 })
' mov eax, dword ptr [ebp+08]
' mov eax, dword ptr [eax]
' leave
' ret 0004
返回 (0)
取字節(jié)集指針的例子:
.版本 2
.支持庫 spec
.子程序 取字節(jié)集指針, 整數(shù)型, 公開
.參數(shù) 字節(jié)集, 字節(jié)集, 參考置入代碼 ({ 139, 69, 8, 139, 0, 131, 192, 8, 201, 194, 4, 0 })
' mov eax, dword ptr [ebp+08]
' mov eax, dword ptr [eax]
' add eax, 00000008
' leave
' ret 0004
返回 (0)
以上就是本次給大家介紹內(nèi)嵌匯編去變量指針的全部內(nèi)容,感謝大家對(duì)腳本之家的支持。
相關(guān)文章
MySql實(shí)現(xiàn)簡單的注冊(cè)登錄(易語言)
這篇文章主要介紹了使用易語言MySql實(shí)現(xiàn)簡單的注冊(cè)登錄功能,涉及到易語言命令的相關(guān)知識(shí),本文介紹的非常詳細(xì),具有參考借鑒價(jià)值,感興趣的朋友一起學(xué)習(xí)吧2016-08-08解決易語言調(diào)試的時(shí)候提示不能寫出臨時(shí)文件
在本文里小編給大家分享了解決易語言調(diào)試的時(shí)候提示不能寫出臨時(shí)文件的方法內(nèi)容,需要的朋友們參考下。2018-11-11