Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6386
  • 博文数量: 6
  • 博客积分: 130
  • 博客等级: 入伍新兵
  • 技术积分: 70
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-11 10:39
文章分类

全部博文(6)

文章存档

2011年(6)

我的朋友
最近访客

分类: WINDOWS

2011-09-01 13:26:59

1)、JE    相等(=)则跳转 0标志=1       JZ
2)、CMP   操作数1 - 操作数2 不保存结果 影响标志位
3)、TEST  按位与运算 不保存结果 影响标志位
          如  TEST ESI,ESI
          用于判断 ESI 是否为空
            ESI 为空 --> 0标志=0 ; ESI 为不空 --> 0标志=1
4)、JNE   0标志=0(没有置位) 则跳转    JNE
5)、JA/JB jb(jump below) 前者小于后者就跳转
          ja(jump above) 前者大于后者就跳转
               用于无符号
6)、“OllyDBG 入门系列(三)-函数参考” 中一直不理解
      为什么这句代码 “LEA ECX,DWORD PTR DS:[ECX+ECX*4]” 会解释成 :“把前面运算后保存在ECX中的结果乘5再送到ECX”
      那么 我先这样理解:首先这是 LEA语句,然后 跟踪到上面一点的代码 “LEA ESI,DWORD PTR DS:[4033C4]”时,看到 ESI 的值就是 4033C4 ,再加上在Win32下 段地址寻址貌似可以先忽略段得存在(),so 就相当于 ECX = ECX*5
7)、注意 上面的 “LEA ECX,DWORD PTR DS:[ECX+ECX*4]” 与
      “OllyDBG 入门系列(四)-内存断点”中“MOV EBX,DWORD PTR DS:[ESI]”的区别。
     前者是 ECX = ECX*5 ;后者是 EBX = [ESI] (注意方括号)
8)、GetCursorPos
阅读(638) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:VC6 / gcc 显示汇编代码

给主人留下些什么吧!~~