- 資訊首頁(yè) > 開(kāi)發(fā)技術(shù) > 編程語(yǔ)言 >
- 易語(yǔ)言中如何內嵌匯編取變量指針
這篇文章主要為大家展示了“易語(yǔ)言中如何內嵌匯編取變量指針”,內容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習一下“易語(yǔ)言中如何內嵌匯編取變量指針”這篇文章吧。
內嵌匯編不能取自定義類(lèi)型(成員非4字節,取來(lái)的是對齊結構的指針,比如成員為字節型分配4個(gè)字節),和非小數和整數,文本型數組不可以取指針,其它的都可以
要注意的是易的子程序前有EBP入棧操作,所以要有出棧操作才行
這是我寫(xiě)的取整數型指針的例子(字節型,短整數型,小數型,日期時(shí)間型,雙精度小數型都通用,注意參數要為參考):
.版本 2
.支持庫 spec
.子程序 取整數型指針, 整數型, 公開(kāi)
.參數 整數, 整數型, 參考
'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
.子程序 取文本型指針, 整數型, 公開(kāi)
.參數 文本, 文本型置入代碼 ({ 139, 69, 8, 139, 0, 201, 194, 4, 0 })
' mov eax, dword ptr [ebp+08]
' mov eax, dword ptr [eax]
' leave
' ret 0004
返回 (0)
取字節集指針的例子:
.版本 2
.支持庫 spec
.子程序 取字節集指針, 整數型, 公開(kāi)
.參數 字節集, 字節集, 參考置入代碼 ({ 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)
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自互聯(lián)網(wǎng)轉載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權請聯(lián)系站長(cháng)郵箱:ts@56dr.com進(jìn)行舉報,并提供相關(guān)證據,一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容。
Copyright ? 2009-2021 56dr.com. All Rights Reserved. 特網(wǎng)科技 版權所有 珠海市特網(wǎng)科技有限公司 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2