如何能读懂VC++编译器产生的ASM汇编信息

fancystyle 2009-07-01 11:41:41
非计算机专业毕业,对汇编懂的很少,8086王爽的那本 汇编语言.未完全看完.
用VC++2008调试看到的汇编信息,感觉和那个8086的汇编差异很大,或者压根看不懂.寄存器的名称都不一样.
请教,我想读懂(大部分就可以,达到理解的状态)那些32位汇编信息,我可以参考哪些书籍?
真诚求解.
...全文
109 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
fancystyle 2009-07-02
  • 打赏
  • 举报
回复
很感谢大家的认真回帖.让我有了点头绪.谢谢
pla_007 2009-07-01
  • 打赏
  • 举报
回复
其实你搞懂了16位汇编,再看32位汇编,应该上手很快的。

无非就是寄存器从16位变成32位。
原来的AX、BX、CX、DX已经被扩充成EAX、EBX、ECX、EDX。
原来的SI、DI、BP、SP已经被扩充成ESI、EDI、EBP、ESP。

==

但是运行的原理还是一样。
wxgiter 2009-07-01
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 mydo 的回复:]
intel汇编语言程序设计
80x86汇编语言程序设计

多看看,多想想
[/Quote]
这两本很好。。。。
cnzdgs 2009-07-01
  • 打赏
  • 举报
回复
8086汇编只在DOS下使用,可以作为入门学习。之后可以进一步学习80X86汇编,了解386指令集,然后再学习Win32汇编以及了解CPU保护模式(Windows系统运行与此模式)。
clarkyu82 2009-07-01
  • 打赏
  • 举报
回复
路过!学习ING!
用户 昵称 2009-07-01
  • 打赏
  • 举报
回复
汇编是一个需要反复熟练的过程,多看多写,等到指令一眼就懂的地步,就基本上差不多了。
BAYNPU 2009-07-01
  • 打赏
  • 举报
回复
先学习汇编程序设计(16位),然后再学习32位汇编,等混得差不多,再看反汇编就不难了.
大熊猫侯佩 2009-07-01
  • 打赏
  • 举报
回复
intel汇编语言程序设计
80x86汇编语言程序设计

多看看,多想想
GaA_Ra 2009-07-01
  • 打赏
  • 举报
回复
寄存器的什么的相当重要,绝对要弄清楚.这些在看雪也是有专门的帖子讲的,
从简单的程序看起,
而且一个程序,不要整个程序都看反汇编的代码
从一些简单的函数开始,慢慢熟悉.看多了就有点感觉了~
GaA_Ra 2009-07-01
  • 打赏
  • 举报
回复
可以看黑客反汇编,但是这本是以linux下的程序来讲解的.反汇编出来代码的格式也跟vc的有点差别,但是他讲得比较详细,像循环啊,控制结构啊他都举例,然后给出反汇编代码.

如果你想看懂反汇编,我自己的经历是这样的.
8086那本虽然说是基础,但是把基本的几条指令弄清意思就可以了,到时候遇到忘记就搞个汇编指令查询器去查一查
看vc反汇编出来的代码可能理解起来比较麻烦,可以用IDA反汇编看,或者用od反汇编看
剩下的就是一些系统调用,编译器优化的东西.
系统调用可以参考看雪论坛的新手指导贴,或者买本加密与解密看看基础的那几章,后面的是反汇编深入应用部分
看一看罗云彬的win32汇编电子书的前几章--需要了解的东西,应该也有所帮助
另外的可以了解一下windows操作系统的一些原理.开始的话了解个大概就ok了,慢慢再去深入.
有不懂多上看雪论坛看新手帖,精华帖,发帖询问
基本就这些了~
fancystyle 2009-07-01
  • 打赏
  • 举报
回复
谢谢楼上的.
虽然原理一样的,或许那些寄存器的使用上也没有太大的区别.
我希望看到更准确的文档,或者书可以参考学习.

21,458

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧