首页
社区
课程
招聘
[旧帖] [求助]谁能详解一下INTEL两字节指令表《Table A-3. Two-byte Opcode Map》? 0.00雪花
发表于: 2010-4-26 01:19 2326

[旧帖] [求助]谁能详解一下INTEL两字节指令表《Table A-3. Two-byte Opcode Map》? 0.00雪花

2010-4-26 01:19
2326
如题,我想编写一个解析机器码中单条语句长度的程序,现已完成单字节指令(即表A-2)的解析,但对于两字节指令,我还不大理解,在OllyDBG中也不能完整地分析。请高手指点,谢谢!

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

上传的附件:
收藏
点赞
支持
分享
最新回复 (4)
雪    币: 8505
活跃值: (3005)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
变长编码,想想电话号码就知道原理了
2010-4-26 10:30
0
雪    币: 121
活跃值: (66)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
不明白楼上的意思。我知道两字节指令的第一个字节为0F,但对第二字节的解析方式还不太清楚,如0x0F10该如何解析呢?在OD中输入二进制F20F10时,结果如下:
00404ADC      F2:                      PREFIX REPNE:                                      ;  多余的前缀
00404ADD      0F1090 90909090          MOVUPS XMM2,DQWORD PTR DS:[EAX+90909090]
又如,输入二进制0F1090和660F10时,结果如下:
00404AC5      0F1090 90909090          MOVUPS XMM2,DQWORD PTR DS:[EAX+90909090]
00404ACC      66:0F1090 90909090       MOVUPS XMM2,DQWORD PTR DS:[EAX+90909090]

根据表A-3,这两者应该是不一样的(movups与movupd (66)),不知道是什么原因?请高手指点!
2010-4-26 23:50
0
雪    币: 3054
活跃值: (906)
能力值: ( LV13,RANK:1300 )
在线值:
发帖
回帖
粉丝
4
OD对SSE指令不完全支持,VS2005什么的比较全。
2010-4-27 08:21
0
雪    币: 121
活跃值: (66)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
谢谢楼上,但我对VS2005不大熟。不知道VS2005中能不能像OD中一样,输入二进制就可看到反汇编的结果呢?
2010-5-7 00:22
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册