关于汇编的问题,MOV EBP,ESP 是啥意思,起的是啥作用啊?

1、如题,我想学习一些基本的汇编,看什么书或者什么教程,求指教~... 1、如题,我想学习一些基本的汇编,看什么书或者什么教程,求指教~ 展开
 我来答
冷呀双鱼
2014-11-17 · TA获得超过248个赞
知道答主
回答量:148
采纳率:0%
帮助的人:48.5万
展开全部
byte ptr [ecx+eax]
其中ptr强制转换时要用的关键字,byte是要转换的类型,[ecx+eax]是一个内存地址,即一个变量。以下看详细解释。

mov dl,byte ptr [ecx+eax]
//把ptr [ecx+eax]地址所代表的变量强转成byte型(即16位,等价于一个字节)放入DL中,因为32位机每个变量是32位的,而DL是DX的低16位,如果不转就放不进去。
cmp eax,xxxxxxxx
//把eax中的值和xxxxxxxx比较
jnz end
//不相等,就跳到end
mov dl,xx
//相等,就把xx放入dl中
cmp eax xxxxxxxx
//比较eax和xxxxxxxx
jnz end
//不想等,跳到end
mov dl,xx
//相等,把xx放入dl
end:
mov byte ptr [eax],dl
//把eax强转位byte型(即16位),把dl放入eax中
jmp xxxxxxxx
//跳到xxxxxxxx
、1.首先,我不推荐《IBM汇编语言》这类教科书试的教材。一来里面讲的一些东西都过时了,只有一些8086的东东,可我们早使用奔腾了。从286,386之后,Inte CPU的结构已经有了很大的改进。而且这类书里面讲的也无非就是一些简单的指令格式和语法,但却讲得让人似在云里雾里。

2.不推荐一开始就学MASM或TASM的语法,其实语法这东西很简单。只有有一点点计算机编程基础的人,我相信最多一个小时,都能基本搞懂,然后再练练就自然会熟,不记得直接翻Refererce就可以。

3.推荐首先看Intel网站是的《IA-32 Software development manual》,耐着点性子把Volume I和Volume III看完。这样你会对Protect mode,Virtual Memory以及V86有足够的了解 。

4.然后看看MASM或TASM(看你用哪一个编译器)的语法,这个前面说过,几分钟就能明白。

5.在有了前面的基础之后,你就该开始动手好好练练了。以后的路就不必多说了。

6.另外,如果你觉得单纯的学汇编很没意思的话,你可以用Virus来练手,我以前就是这么做的。

如果你的英语和我一样的好(四级),那你可能要一个月左右才能看完Volume I和Volume III,然后再花一个星期左右去练练。那你的汇编就可以说入门了,往后的路也比较容易走了。

当然,如果你实在不喜欢English,那你就随便找两本中文版的Protect mode(保护模式)的书来看看吧。这样你最好边看边练。这种学习方法能获得比较好的短期效果。

至少MASM的语法是比较简单的,里面很多的MACRO可以让你像使用C一样使用ASM。而各指令呢,不会就查Volume II的Instruction Reference

耐心啊 耐心 编程这东西 再枯燥也要保持兴趣 永远是王道。

入门以后,也不要考虑一口就吃一个胖子:非得编出个什么漂漂亮亮的程序来不可。

其实没必要的,建议多练练基本的,以量的练习为主(10遍20遍的小意思)。

大概再有半个月的时间,可以考虑trouble shooting 来实例排错,运用实际场景和应用功能,进行功能和语法的排错,从而锻炼自己的思考能力和思维方式

编程这种东西,都是触类旁通 等你大脑中有了一个关于它的 健全的 知识体系结构的时候,就可以融会贯通了。

仅供参考

以上。
上海巴鲁图工程机械科技有限公司_
2022-05-15 广告
光电编码器,是一种通过光电转换将输出轴上的机械几何位移量转换成脉冲或数字量的传感器。光电编码器每转输出60(我们用老板没有说)个脉冲,五线制。其中两根为电源线,三根为脉冲线(A相、B相、Z)。电源的工作电压为 (+5~+24V)直流电源。光... 点击进入详情页
本回答由上海巴鲁图工程机械科技有限公司_提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式