三种循环反汇编代码比较
来源:互联网 发布:淘宝店铺头像图片logo 编辑:程序博客网 时间:2024/06/05 04:47
for循环
for (i = 0; i< 50; i++)
{
c = c+i;
}
1. 为循环变量赋值 mov dword ptr [i], 0
2. 跳转到循环变量比较处 jmp [比较地址]
3. 修改循环变量 mov eax, dword ptr[i]
add ,eax ,1
mov dword ptr[i], eax
4. 执行循环体 mov eax , dword ptr[c]
add eax, dword ptr[i]
mov dword ptr[c], eax
5. 比较循环变量边界值 cmp dowrd ptr [i], 32
jge [循环结束]
6. 跳转到循环开始的地方 jge [循环开始]
do while 循环
do
{
a = a +1;
}
while(a < 50)
1. 执行循环体 mov eax, dword ptr [a]
add eax, 1
mov dword ptr[a], eax
2. 比较结束条件 cmp dword ptr[a], 32
jl [循环开始]
while 循环
while (a < 50)
{
a = a + 1;
}
1. 比较循环控制条件 cmp dword ptr[a], 32
jge [循环结束]
2. 循环体 mov eax, dword ptr[a];
add eax , 1
mov dword ptr[i], eax
3. 跳转到循环开始 jmp [循环开始]
- 三种循环反汇编代码比较
- C语言三种循环反汇编分析
- c++反汇编代码分析--循环结构
- c++反汇编代码分析--循环结构
- 汇编反FOR 循环
- 反汇编【for循环】
- C语言反汇编代码(三大结构)
- 反汇编常见代码
- 反汇编代码
- 反汇编代码对照
- 查看反汇编代码
- 反汇编代码分析
- 反汇编代码格式
- 反汇编代码分析
- 反汇编调试死循环
- Jack对分支循环语句伪指令反汇编前后的比较
- 三种循环的比较
- 循环结构之三种循环比较
- Extjs checkbox Grid勾选时事件
- 爱在七夕,如果我们在一起。。
- oracle导出某个表的表结构
- struts多模块开发
- 值得回顾的视频:Revolution OS [操作系统革命]
- 三种循环反汇编代码比较
- Building-a-Framework-for-Silverlight-Line-Of-Business-Applications
- 转:gbk, gb2312,big5,unicode,utf-8,utf-16的区别
- Linux中文件查找技术大全
- MFC树控件应用实例
- CentOS添加永久静态路由
- Java中的instanceof关键字(转)
- Thread
- MapBalanceReduce介绍