首页
社区
课程
招聘
[旧帖] [求助]汇编里的test eax,eax不明白,请教! 0.00雪花
发表于: 2007-8-16 16:37 18545

[旧帖] [求助]汇编里的test eax,eax不明白,请教! 0.00雪花

2007-8-16 16:37
18545
最近学习破解。汇编里有个不明白的地方

1
OR AL,AL
这里是什么意思呢
2
MOV EBX,DWORD PTR SS:[EBP-2C]
这里的[EBP-2C]的“-”是减法的意思么
SS:[]和DS:[]有什么区别

先问这么多,其它的我先研究研究

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
没人回?

(如果是XOR AL,AL就是进行异或,就是把AL清零,这个我知道)
可能问得不太清楚
000007F0    2C 30           SUB AL,30
000007F2    8D0C89          LEA ECX,DWORD PTR DS:[ECX+ECX*4]
000007F5    8D0C48          LEA ECX,DWORD PTR DS:[EAX+ECX*2]
000007F8    8A06            MOV AL,BYTE PTR DS:[ESI]
000007FA    46              INC ESI
000007FB    0AC0            OR AL,AL       ; 就只有这里没看懂
000007FD  ^ 75 F1           JNZ SHORT 000007F0
2007-8-16 19:29
0
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
继续求,好像会影响标志位
到底怎么影响呢。。。为什么会出现“jnz”不相等呢,什么和什么作比较?
2007-8-17 11:39
0
雪    币: 240
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
[QUOTE=朱古力;346562]没人回?

(如果是XOR AL,AL就是进行异或,就是把AL清零,这个我知道)
可能问得不太清楚
000007F0    2C 30           SUB AL,30
000007F2    8D0C89          LEA ECX,DWORD PTR DS:[ECX+ECX...[/QUOTE]
好像是判断AL是否为零吧
2007-8-17 11:47
0
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
哦,如果为AL为零会怎么样,为1为2为3又会怎么样,
2007-8-17 11:58
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
000007FB    0AC0            OR AL,AL       ; 就只有这里没看懂
000007FD  ^ 75 F1           JNZ SHORT 000007F0
如果al为0则不跳转
    不为0则跳
2007-8-17 12:16
0
雪    币: 211
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
or Al,AL
是判断al中的数值是否为0

or 是进行的为或运算,只要al中的8位有一位不为0,则结果肯定不为0,影响标志位

进而用 jnz判断  

高级语言
.if al == 0
    do somthing
.endif
2007-8-17 14:37
0
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
谢谢大家
那test eax,eax这种呢?
2007-8-17 15:08
0
雪    币: 240
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
9
我觉得 其实你不应该再问这个问题了,
这都是一类问题了。
举一反三,看看 kanxue 大哥的文章吧
里面还有个 FTBirthday 写的‘test和cmp一个很菜很基础的话题! ’呢!!
2007-8-17 15:46
0
雪    币: 269
活跃值: (38)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
test 进行的是 与 操作 但是和and不同,他不影响寄存器。
2007-8-17 15:52
0
雪    币: 424
活跃值: (10)
能力值: ( LV9,RANK:850 )
在线值:
发帖
回帖
粉丝
11
text
把两个操作数进行"与"操作,不保存运算结果,只设置标志位
一般用
text eax,eax  //来检测eax是否为空
jnz xxxxx       //不为空就跳
2007-8-17 16:08
0
游客
登录 | 注册 方可回帖
返回
//