首页
社区
课程
招聘
[旧帖] [求助]关于cmp比较的问题 0.00雪花
2007-6-28 21:59 4048

[旧帖] [求助]关于cmp比较的问题 0.00雪花

2007-6-28 21:59
4048
cmp后面两个操作数,是有符号数还是无符号数是按什么作为参考标准的,比如是按后面的跳转指令(jz无符号,jg有符号),还是按这行代码执行完后看flag的标志位(of=1,sf=1)?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工 作,每周日13:00-18:00直播授课

收藏
点赞0
打赏
分享
最新回复 (4)
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
yingyue 2007-6-29 02:00
2
0
你看汇编的书看多了,不是不对,而是太对了

cmp eax,ebx    // eax =1 ,ebx =2
jnz xxxxxxxxx      // 地球人都知道不对,要跳了,这里 ZF 置 1

在 OD 里,只要你跟踪一下就不会搬书本的东西来运用了(书本没错,只是不一定用到)

004028A1   .  3BC6          cmp     eax, esi   // EAX ESI  都是 0
004028A3   .  DBE2          fclex
004028A5   .  7D 12         jge     short 004028B9   // 这里 SF 置 0

说着说着我都乱了
雪    币: 192
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
devilpeter 2007-12-13 21:46
3
0
fclex这个操作数是什么意思?
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
freelion 2007-12-13 21:54
4
0
没错,在OD里实际看一下,什么都知道了
雪    币: 242
活跃值: (14)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
whtyy 1 2007-12-13 22:00
5
0
机器指令层次实际上可以忽略什么是不是有符号,可以认为有无符号是让高级语言编译器在产生指令时安排指令用的
CMP指令内部实际上是SUB的实现
SUB可以认为同时进行了有符号和无符号运算。
游客
登录 | 注册 方可回帖
返回