pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

使用匯編語言實現if else 循環函數調用的具體方法

這篇文章主要介紹了使用匯編語言實現if else 循環函數調用的具體方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編

需要使用匯編來演示如下代碼 需要下載ollydbg匯編調試器 點擊File-Open隨意打開一個exe文件 我這里隨便找到c:/windows/explorer.exe文件


這里EIP的值表示下一次運行需要執行的代碼位置


雙擊 EIP紅色地址 左邊代碼會自動跳轉到對應的代碼行 有了以下環節 接下來添加代碼


如果替換的代碼 占用的字節數 小于原始的代碼數 會自動補充 nop空指令

一。實現 if else

MOV EAX,1 表示將1立即數 設置給EAX寄存器

CMP EAX,1 比較EAX的值和1是否相等 Z標志位(如果減法運算 結果為0 該標志被置為1 不為0 標志位被置為0) 這里EAX=1 Z標志=1

JE 0101A572 表示有條件跳轉 當Z標志=1(也就是EAX=1) 自動跳轉到后面指定的0101A572 地址 就會執行 move EBX,1

JNE 0101A578 表示有條件跳轉 當Z標志=0(也就是EAX!=1) 自動跳轉到后面指定的0101A578 地址 就會執行 move ECX,1


如果需要調試 參考如下圖


二。實現 循環

MOV ECX,4 表示將4立即數 設置給ECX寄存器

DEC ECX 將ECX的值 減去1

TEST ECX,ECX TEST指令是將ECX和ECX進去邏輯與 操作 1001&1001一定是自己1001 只有當ECX等于0時 0&0就是0 這個test指令 會修改Z標志

位 如果ECX等0 那么邏輯與 Z標志位就是1 ECX不等于0 Z標志位等于0 所以TEST ECX,ECX可以判斷ECX是否為0

JNE 0101A564 表示有條件跳轉 當ECX!=0時 z標志位=0 跳轉到0101A564這個位置 繼續遞減 一直循環到 ECX=0時 此時z標志位=1

不執行跳轉循環結束


也可以使用 LOOP 跳轉的位置來進行循環 該指令會自動將ECX的值 遞減1 不需要單獨控制ECX遞減 當ECX遞減到0時自動退出循環

loop


二。實現 函數調用

這里需要明白一下函數調用的實際過程 是先將 參數壓入棧中 在c語言中 stdcall 先壓入函數右邊的參數 這里假設有兩個參數10和20

棧的原理是 先入后出 壓入兩個參數后 call指令會自動壓入 函數調用完成后 下一個執行指令的位置

PUSH 10 壓入第一個參數

PUSH 20 壓入第二個參數

CALL 0101A56D 調用函數 函數的入口地址是0101A56D 可以查看如下圖片中右下角堆棧的部分 分別壓入了 10,20 以及call后面的一句代碼的地址

0101A568 也就是call完成了執行0101A568 這里的代碼

call 0101A56D 會自動跳轉到0101A56D 代碼的位置 這里取出棧中(ESP指向棧頂 棧頂是call完成后返回的地址) ESP棧頂+4(第二個參數) ESP棧頂+8(第一個參數)

retn 8 表示 函數返回 返回 就會自動跳轉到棧頂指向的地址的代碼位置0101A568 就會執行 (8這個數 表示自動將堆棧中兩個參數的值出棧 拋棄)

jmp 0101A57A


以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持html5模板網。

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

這篇文章主要介紹了匯編語言 寄存器內存訪問原理解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
這篇文章主要介紹了匯編語言位向量(位映射)的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學
這篇文章主要介紹了匯編語言AND指令實現對兩個操作數進行邏輯(按位)與操作,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面
在匯編語言中,MOV指令是數據傳送指令,也是最基本的編程指令,這篇文章主要介紹了匯編語言MOV指令,需要的朋友可以參考下
這篇文章主要介紹了匯編語言中中括號[]作用及lea和mov指令的區別,本文分步驟給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
主站蜘蛛池模板: 长春网站建设,五合一网站设计制作,免费优化推广-长春网站建设 | 充气膜专家-气膜馆-PTFE膜结构-ETFE膜结构-商业街膜结构-奥克金鼎 | 石家庄小程序开发_小程序开发公司_APP开发_网站制作-石家庄乘航网络科技有限公司 | QQ房产导航-免费收录优秀房地产网站_房地产信息网 | 防水套管-柔性防水套管-刚性防水套管-上海执品管件有限公司 | 钛板_钛管_钛棒_钛盘管-无锡市盛钛科技有限公司 | 517瓜水果特产网|一个专注特产好物的网站 | 高尔夫球杆_高尔夫果岭_高尔夫用品-深圳市新高品体育用品有限公司 | 分光色差仪,测色仪,反透射灯箱,爱色丽分光光度仪,美能达色差仪维修_苏州欣美和仪器有限公司 | 工业淬火油烟净化器,北京油烟净化器厂家,热处理油烟净化器-北京众鑫百科 | 台湾Apex减速机_APEX行星减速机_台湾精锐减速机厂家代理【现货】-杭州摩森机电 | 档案密集架,移动密集架,手摇式密集架,吉林档案密集架-厂家直销★价格公道★质量保证 | 上海新光明泵业制造有限公司-电动隔膜泵,气动隔膜泵,卧式|立式离心泵厂家 | 成都办公室装修-办公室设计-写字楼装修设计-厂房装修-四川和信建筑装饰工程有限公司 | 丹尼克尔拧紧枪_自动送钉机_智能电批_柔性振动盘_螺丝供料器品牌 | 集装袋吨袋生产厂家-噸袋廠傢-塑料编织袋-纸塑复合袋-二手吨袋-太空袋-曹县建烨包装 | 全钢实验台,实验室工作台厂家-无锡市辰之航装饰材料有限公司 | 防锈油-助焊剂-光学玻璃清洗剂-贝塔防锈油生产厂家 | 远程会诊系统-手术示教系统【林之硕】医院远程医疗平台 | 散热器-电子散热器-型材散热器-电源散热片-镇江新区宏图电子散热片厂家 | 雷达液位计_超声波风速风向仪_雨量传感器_辐射传感器-山东风途物联网 | 成都装修公司-成都装修设计公司推荐-成都朗煜装饰公司 | 沈飞防静电地板__机房地板-深圳市沈飞防静电设备有限公司 | 武汉不干胶印刷_标签设计印刷_不干胶标签印刷厂 - 武汉不干胶标签印刷厂家 | 山东锐智科电检测仪器有限公司_超声波测厚仪,涂层测厚仪,里氏硬度计,电火花检漏仪,地下管线探测仪 | 济南冷库安装-山东冷库设计|建造|冷库维修-山东齐雪制冷设备有限公司 | 超声波清洗机_细胞破碎仪_实验室超声仪器_恒温水浴-广东洁盟深那仪器 | 游戏版号转让_游戏资质出售_游戏公司转让-【八九买卖网】 | 健身器材-健身器材厂家专卖-上海七诚健身器材有限公司 | 天津拓展_天津团建_天津趣味运动会_天津活动策划公司-天津华天拓展培训中心 | 多米诺-多米诺世界纪录团队-多米诺世界-多米诺团队培训-多米诺公关活动-多米诺创意广告-多米诺大型表演-多米诺专业赛事 | 广东恩亿梯电源有限公司【官网】_UPS不间断电源|EPS应急电源|模块化机房|电动汽车充电桩_UPS电源厂家(恩亿梯UPS电源,UPS不间断电源,不间断电源UPS) | 超声波分散机-均质机-萃取仪-超声波涂料分散设备-杭州精浩 | 滚筒烘干机_转筒烘干机_滚筒干燥机_转筒干燥机_回转烘干机_回转干燥机-设备生产厂家 | 微动开关厂家-东莞市德沃电子科技有限公司 | 儋州在线-儋州招聘找工作、找房子、找对象,儋州综合生活信息门户! | 红立方品牌应急包/急救包加盟,小成本好项目代理_应急/消防/户外用品加盟_应急好项目加盟_新奇特项目招商 - 中红方宁(北京) 供应链有限公司 | 干法制粒机_智能干法制粒机_张家港市开创机械制造有限公司 | 帽子厂家_帽子工厂_帽子定做_义乌帽厂_帽厂_制帽厂 | 开云(中国)Kaiyun·官方网站-登录入口 | 欧洲MV日韩MV国产_人妻无码一区二区三区免费_少妇被 到高潮喷出白浆av_精品少妇自慰到喷水AV网站 |