首页
社区
课程
招聘
[求助]X87中怎么判断FLD的数据有效性?
发表于: 2012-8-8 10:59 3754

[求助]X87中怎么判断FLD的数据有效性?

2012-8-8 10:59
3754
FLD 装入了一个数,而这个数可能是一个特殊的浮点值,查看值时是NAN
怎么判断这个数是否有效?

      FLD     TBYTE PTR [EAX]
      LEA     ESP , [ESP-28]
      FNSTENV [ESP]
      MOV     CX  , [ESP+4]
      SHR     CX  , 0A                 
      AND     ECX , 0E                 //1110 计算ST(0)的序号
      MOV     DX  , [ESP+8]        
      SHR     DX  , CL                 //指向ST(0)
      AND     EDX , 3                  //11
      CMP     EDX , 2                  //00-合法,01-Zero值,10-特殊的浮点值,11-无内容
      LEA     ESP , [ESP+28]

这个方法是可行,但是感觉太臃肿了,有没有其他办法?

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 215
活跃值: (40)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
,应该装入前判断,钻了牛角尖...
2012-8-8 12:49
0
雪    币: 623
活跃值: (40)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
使用一条 fxam 指令就可以了
2012-8-8 13:11
0
游客
登录 | 注册 方可回帖
返回
//