对新手学习win32汇编的一点建议(冒个泡 纯属闲扯)
;*****************************************************************************************************************;作者:zklhp
;Email:zklhp@
;QQ:493165744
;最后更新:2010.5.1
;版权所有 转载请保持完整
;*****************************************************************************************************************
早上好啊 冒个泡~~ 闲扯几句
最近经常看到win32汇编的学习者 这是个好现象 毕竟 win32汇编有一定的应用价值 值得学习和研究
但是从论坛里的发帖情况看 大家学习遇到了不少困难 有些人还被这些问题搞的抓狂
为了让新手少走些弯路 俺就对问题简单总结下 也算是个指引罢
先说垃圾问题 这些是基本是不回答的
XXXX在哪下?
XXXX指令什么意思?
作业怎么做?
XXXX 里 有什么错误?
#¥%……#%#%¥#%#%¥#%¥¥#%(不明白说什么的)
这些为什么不回答大家都知道原因 其实归纳起来就是一个字 懒
你懒得百度 懒得Google 懒得查资料 懒得思考 当然没人能替你!!!!!!
人生在勤 不索何获!!!!
那 怎么避免垃圾问题呢?
我感觉这些是你要做的
明确你的问题 至少你知道你要问什么
提炼问题关键字 进行搜索 比如 你程序编译报错 那 你把错误码找出来 你有东西不明白 那什么不明白 哪个字 哪个词~
搜索~~ 注意搜索技巧 其实也没什么深奥的 多换关键字 多尝试 注意分词 注意逻辑 包括什么 不包括什么
对于搜索得到的结果 多揣摩 看是不是想要的 没结果的 想想为什么 是搜错了 还是就没原因
最后 找不到了 问!
问也有技巧 怎么问问题 是个学问 建议参考《提问的艺术》(问我在哪找? 自己找!)
垃圾问题到此结束 下面是正题 呵呵 罗嗦吧~~
先说win32汇编~
其实 这个win32汇编 可以理解成一种七拼八凑的东西 这是我个人理解 不一定对 不过 非官方是肯定的
MFC Java Delphi VB …… 都有相应成体系的东西 有公司在做 而汇编呢
注意 Micro$oft 只提供了编译器 链接器等简单工具 我们用的masm32包 资源编辑器 IDE 头文件 库文件 例子程序 参考 教程 资料 基本 或全部是爱好者做的
有优点 有缺点
优点 随意 灵活性打 免费 自由 锻炼人
缺点 入门难 弯路多 无所适从
这点尤其在编译程序上体现的明显
其实 问编译问题 问汇编环境构建问题 这些设置 等等 的 都不是汇编不好 而是 windows基本操作不熟或理解不深刻 编程功底不好 动手能力不强
这些都不是问题! 或 这些都不是汇编的问题!
不过 话又说回来了 要是这些都不行 恕我直言 就先别搞汇编了 先补补课罢
对具体知识我不讲 基本操作 概念 自己学~ 我给大家放几个资料或工具名
masmplus 我推荐的
radasm 高人们用的
如何构建Win32汇编的编程环境(ONEPROBLEM个人推荐)
其他 自己找罢 东西多的很 我也就会用IDE(我感觉 IDE这东西不算是个坏发明 我们知道原理 没了能走 够了 真正实用的 还是IDE 有汽车 有三轮 我们用哪个啊 当然汽车了)
总之 这不应该成为一种问题 而是一种能力 基本能力
你又说 我不会啊 我菜鸟啊 我新手啊 我第一次啊 问问题罢 说这个也可以 但 这不能成为借口 每天学习 日知其所亡 一点一点来 明天都进步 总能积累 总能学会!
还有一个体现 XXXXX在哪找的问题
其实啊 有些真是找不到 怎么办? DIY啦 这 要求我们会多种语言 最起码 c得能看懂 最最起码 能看懂修饰 能看懂定义 能看懂结构
有工具 确实 h2inc 不过 不好使 某个东西没有 很多时候是得自己弄~~~
明白这些 有些问题没了罢 呵呵
再说一个 XXXX 怎么理解的问题
这个XXXX老多啦~~
比如
指令——这是个笨问题 指令的基本 最起码 你问的时候要让我们知道或认为 你明白指令格式 指令意义
某个概念——也不聪明 不解释
某句话——诶~~~ 有些话确实挺难理解 那 兼听则明 多看几个版本 实在不行看英文 呵呵
这里我给一种通用点的方法 读书百遍其义自见~~~~
多读几遍就明白了 或 以后就明白了~ 这方法是私塾的方法 不过很实用啊 你不明白 总不能在这里吊死罢
多看 记住 往下看 团结一致向前看啊~
很多东西 比如 像C里的指针 一上来 基本是肯定不能理解 那就先记住格式 背下来 用用 慢慢能理解的~
要你实在理解不了 那 很有可能是基础不牢
勿在浮沙筑高台啊 win32汇编的基础是什么 是汇编指令 是x86汇编指令
这里 我没说是16位 为啥啊 16位里的很多东西 中断啦 那些 你学win32汇编基本是用不到的 顶多算个思想 算个知识
有用的是指令!!!!
你连push都不知道是干啥的 如何理解win32汇编里那些堆栈 那些参数一类的东西啊
还是那个话 可以不用 但 不能不会 不能不明白
指令的学习 一般是靠16位的(貌似有人该砸我了~)
这个~~~~ 我感觉是这样 16位本身不需要 16位汇编和32位汇编(特指 Windows环境下32位汇编语言程序设计 嘻嘻 这才是我说的win32汇编)是不同的 但 指令是相通的~ 所以 就这样吧
当然 还有 比如 宏~~~~~~
这东西 高人们的意见是 少用 简单的用用就罢了 提高效率 又不容易出错 但 复杂的就算了 容易错 很多时候要靠技巧 技巧这东西 说难听 叫 奇技淫巧~~~
用简单的宏 也得知道 你用的是宏 你写成的东西实际是怎么样的 千万别说 invoke指令怎么样 if指令怎么样 可没这些指令~~ 区别 请baidu
还有一个 编程思想的问题 这个 我感觉 入门 这东西体现的不太明显 我不说了
总结一下 win32汇编是 非官方 自主性强的 跨领域 多学科的 侧重应用 需要一定基础的
因此 要有 激情 耐心 基础 等等等等~~~
完了 期望说这么多有点帮助~
[ 本帖最后由 zklhp 于 2011-2-22 00:33 编辑 ]