从c语言到汇编从汇编到c语言

上传人:自*** 文档编号:80157542 上传时间:2019-02-19 格式:DOC 页数:2 大小:55.30KB
返回 下载 相关 举报
从c语言到汇编从汇编到c语言_第1页
第1页 / 共2页
从c语言到汇编从汇编到c语言_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

《从c语言到汇编从汇编到c语言》由会员分享,可在线阅读,更多相关《从c语言到汇编从汇编到c语言(2页珍藏版)》请在金锄头文库上搜索。

1、从C语言到汇编,从汇编到C语言相关文章: 从C语言到汇编,从汇编到C语言RSA地精技术联盟-vc+从入门到精通第三课(c+语言基础1)第3课拉群内同步更新硬盘克隆大师从入门到精通世宝视频教程从爬行到走路第一季、第二季 很全!史上最牛的教程 版主点亮从入门到精通 ps秘笈要从事“逆向工程”工作,或对其感兴趣,请必然要接触到汇编语言。然而我们在对计算机语言的了解大都是从高级语言(如C、VB、Dephi)开始的。那当我们阅读由高级语言翻译成的机器语言时肯定会遇到很多障碍。下面是我在看了相关书籍后,做的一些笔记,希望有点参考价值!一、循环语句与发汇编后的机器语言1、for循环下面是一段C语言的代码,我

2、们的目的是来看其反汇编的结果:int myfunction(int a,int b)int c = a+b;int i;for(i=0;i50;i+)c = c+i;return c;前面的反汇编暂时不理它,这里从for的地方开始反汇编,结果如下:for(i=0;i 00412BD0 mov eax,dword ptr | 00412BD3 add eax,1 / i+;修改循环变量| 00412BD6 mov dword ptr ,eax| 00412BD9 cmp dword ptr ,32h / 比较 i 与50的关系, 检查循环条件| 00412BDD jge myfunction+4

3、Ah (412BEAh) / 当 i=50 即 !(i50) 时则跳出循环| | c = c+i;| 00412BDF mov eax,dword ptr c / 变量 c| 00412BE2 add eax,dword ptr / 变量 i| 00412BE5 mov dword ptr c,eax / c=c+i;| 00412BE8 jmp myfunction+30h (412BD0h) / 跳回去修改循环变量00412BEA mov eax,dword ptr c可以看到for循环主要用这么几条指令来实现:mov进行初始化。jmp跳过循环变量改变代码。cmp实现条件判断,jge根据条

4、件跳转。用jmp回到循环改变代码进行下一炊喘环。所以for结构有以下的显著特征:mov , ; 给循环变量赋初值jmp B ;跳到第一炊喘环处A: (改动循环变量) ;修改循环变量。B: cmp , ;检查循环条件jgp 跳出循环(循环体)jmp A ;跳回去修改循环变量2、do循环再看一下do循环,因为 do循环没有修改循环变量的部分,所以比for循环要简单一些。doc = c+i;00411A55 mov eax,dword ptr c00411A58 add eax,dword ptr 00411A5B mov dword ptr c,eax while(c 100);00411A5E cmp dword ptr c,64h00411A62 jl myfunction+35h (411A55h)return c;/本文来自猴岛论坛 :http:/

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号