免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1775 | 回复: 0
打印 上一主题 下一主题

关于nasm反汇编 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-23 03:03 |只看该作者 |倒序浏览
   一直知道nasm能够反汇编,但不知道怎样用命令,

     命令帮助中,ndisasm -o    filename后面就没了,应该有个输出文件。怎么后面没参数了。

     今天查add [bx+si],al的时候突然查到了,后面接>>outfilename。

     反汇编出来,又是一片茫然,反汇编的代码怎么跟自己写的代码有这么大的不同。仔细分析了反汇编代码的结果,乱七八糟。其中,最让我迷惑的还是add [bx+si],al。另外中间还有很多代码,感觉牛头不对马嘴。

     对汇编指令还是不熟,重新看了一遍指令,只是扫了一遍,没有细究。再看add [bx+si],al时,脑中突然亮光闪现,这一条是由0000反汇编出来的,0000只是数据,并不是指令。add [bx+si],al所对应的二进制代码应该是0000吧。顿时明白了反汇编的真正意思。

     明白中间那堆牛头不对马嘴的反汇编代码什么意思了

00007C1E   48                 dec ax
00007C1F   656C               gs insb
00007C21   6C                 insb
00007C22   6F                 outsw
00007C23   2C20               sub al,0x20
00007C25   4F                 dec di
00007C26   53                 push bx
00007C27   20776F             and [bx+0x6f],dh
00007C2A   726C               jc 0x7c98
00007C2C   642100             and [fs:bx+si],ax

     查看二进制数48656C6C6F2C204F5320776F726C6421(曾经以为是所谓的指令),所对应的ASCII码是Hello, OS world!

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP