学习汇编语言的心得体会Word文件下载.docx
《学习汇编语言的心得体会Word文件下载.docx》由会员分享,可在线阅读,更多相关《学习汇编语言的心得体会Word文件下载.docx(4页珍藏版)》请在冰点文库上搜索。
由于计算机能够直接识别的数据是由二进制数0和1组成的代码。
所以用机器语言编写的程序是计算机惟一能够直接识别并执行的程序,而用其他语言编写的程序必须经过翻译才能变换成机器语言程序,为了克服机器语言的缺点,人们采用助记符表示机器指令的操作码,用变量代替操作数的存放地址等,这样就形成了汇编语言。
在这书的的学习中,最大的收获就是数与编码的学习,完善了以前的学习。
然后介绍了8086计算机的组织构成,汇编语言的学习除了要学习语法外,更重要的是了解计算机基本的体系结构,以及其工作原理。
这样才能更好的编写。
接着学了80X86指令系统和寻址方式及后来的汇编语言格式,才真正进入了汇编的指令学习阶段,每一条指令的学习虽然简单但比较多,特别是有些指令的使用场合及错误用法等易犯错、易混淆,例如在编写数据传送指令时,目的操作数和源操作数的类型一定要匹配,CS
不能作为目的操作数,offset后只能跟简单地址符号,等等。
指令集学完后就要进行应用,首先就是循环,看了半天老师给的要求也不会,网上搜了下,发现一个用C语言几句话就解决的问题,用汇编语言却好长,并且没有输出,也不知道是否正确。
好像可以用dos系统功能调用,但是这方面不懂,所以就从网上下了个软件,可以编译的。
对这些基本的都还没掌握,但是仿照例子写出这次的实验,虽然完成了,但是还有很多不懂的地方,编译方面也看的不清不楚的。
在以后的机组实验中,要多多努力才行
汇编语言也是必须通过实践才能理解的,刚开始只想着看书,但是由于时间的紧迫性,开始着手写,还是有一定的收获的,虽然不大。
在以后的学习中,要想学好这门语言,就要主动的学习,并且常上机实验来提升自己的能力。
篇二:
汇编学习心得
08网工
(一)班李锐0804031002
在大三接触汇编语言之前,我们在计算机组成原理课程中就已经有所了解了,但也只是略微明白一些如jmp,mov这样的指令,极度缺乏系统性的学习。
在接触这门课程后,感到汇编语言并不是很容易就可以弄懂的。
相比较以前学过的高级语言如C、C++等,电脑等于在迁就人的思维方式,但学汇编,人却必须要去迁就电脑的思维方式,要设身处地地用电脑的角度去思考问题,这就是我们学习汇编语言时遇到的最大的障碍。
另外,在C语言中不到10个语句构成的程序,用汇编语言却要好几十行甚至上百行。
这不得不让我们对汇编产生一种恐惧感。
事实上,这是完全不必要的。
一旦对它的原理掌握后,编写程序就容易多了。
另外,学习汇编语言能让我们更加了解计算机内部的组织结构,对我们计算机专业的学生来说,学习汇编也是提升综合能力的关键环节。
汇编的学习不仅仅是学习其语法,而更多的是学习计算机基本的体系结构。
其中遇到很多新的概念,名字。
如寄存器、中断、寻址方式等。
这些概念在刚接触汇编这门课的时候难以理解,但在之后的学习中通过老师的讲解,自己亲手编程的方式也就渐渐清晰明了。
我们在学习之前都需要明确什么是汇编语言。
计算机能够直接识别的数据是由二进制数0和1组成的代码。
机器指令就是用二进制代码组成的指令,一条机器指令控制计算机完成一个基本操作。
为了克服机器语言的缺点,人们采用助记符表示机器指令的操作码,用变量代替操作数的存放地址等,这样就形成了汇编语言。
经过一个学期的学习,我也慢慢摸出了汇编学习的规律。
首先,学习这门语言时如果能联系上以前学过的其他高级语言的知识,则会起到良好的效果。
例如C语言程序的运行逻辑结构有顺序(按语句依次执行)、分支结构(IF...THEN...ELSE...),循环结构(FOR...NEXT)三种结构,也通过C语言了解并掌握了什么是子程序,什么是调用。
事实上,汇编语言中有关程序结构,子程序等等的知识都是跟C语言十分相似的,只是在编程时用到的语言不同:
汇编语言完全面向机器,需要指明数据在寄存器、内存中的流向。
第二,学习汇编语言,首要问题是学习80X86指令系统。
如果能将指令系统中的各个助记符、格式等都能完全掌握并灵活运用,大部分工作就已经完成了。
指令系统确定了CPU所能完成的功能,是用汇编语言进行程序设计的最基本部分。
如果不熟悉汇编指令的功能及其有关规定,那肯定不能灵活使用汇编语言。
指令的种类十分繁杂,但其格式却是统一的。
其中方括号中的内容为可选项。
指令助记符决定了指令的功能,对应一条二进制编码的机器指令。
指令的操作数个数由该指令确定,可以没有操作数,也可以有
一个或多个操作数,大多数指令要显示写出来,还有些操作数是隐含的。
当指令包含操作数的时候,书写时必须遵守:
1、指令助记符和操作数之间有分隔符,比如几个空格;
2、如果含有多个操作数,操作数之间用逗号分隔。
现在简单总结汇编语言指令的分类:
1、数据传送指令;
2、标志位操作指令;
3、算术运算指令;
4、逻辑运算指令;
5、移位运算指令;
6、位操作指令;
7、比较运算指令;
8、循环指令;
9、转移指令;
10、条件设置字节指令;
11、字符串操作指令;
12、BCD码运算调整指令;
13、处理器指令。
在编写汇编程序时,应该注意特别容易出现的错误,例如在编写数据传送指令时,目的操作数和源操作数的类型一定要匹配,CS不能作为目的操作数,offset后只能跟简单地址符号,等等。
汇编语言的寻址方式有直接寻址,寄存器寻址,基址变址寻址,相对基址变址寻址等等,掌握这些都是编写汇编程序很重要的环节。
汇编语言中的程序结构,子程序等知识也会帮助我们编写出一个更加完善的汇编程序。
另外,我们还应该掌握DOS系统功能调用,宏汇编等知识。
这里要对子程序和宏汇编加以区分,我的理解是:
子程序是调用,而宏是替换,比如一个MAX宏,所有出现MAX的地方,都用宏代码代替。
在学习汇编语言时,指令的功能是学习和掌握的重点,要准确有效并合理的使用这些指令,必须了解一些使用的规则。
现对汇编语言编程时的规则进行总结,归纳起来有三点:
1、要求指令操作数的寻址方式;
2、指令对标志位的影响和标志位对指令的影响;
3、指令的执行时间,对可完成同样功能的指令,要选用执行时间短的指令。
还有一点十分重要。
和所有的程序设计语言一样,要学好汇编语言,实验是必不可少的环节。
我们深有体会:
书上的程序都能看懂,基本原理也都明白,但是在自己亲手编写程序时,却无从下手,甚至连第一句该怎么写都不知道。
通过实验,可以在很大程度上加深印象。
在书上看程序,一切都是理所当然,十分顺利,而自己动手,才会真正发现自己的不足之处。
程序的编写在记事本中进行即可,掌握debug的使用对实验是有很大帮助的。
现在汇编语言的学课程已经告一段落了,学习过程中遇到的所有困难以及遗留的难点都需要我们在其余时间里逐步攻克,在打好基础的前提下,学习更加专业的汇编知识。
以上便是我在学习汇编语言过程中所有的心得体会,我们会在不断的学习与实践中向着更深入的层面迈进
篇三:
汇编学习心得体会
《汇编语言程序设计》学习心得和体会在接触这门课程初始,就感到汇编语言并不是很容易就可以弄懂的。
相比较以前学过的程序语言如C、C++等,电脑等于在迁就人的思维方式,但汇编却是接近机器语言的一门语言,我们学习和编写程序时必须要去迁就电脑的思维方式,要设身处地地用电脑的角度去思考问题,这就是我学习汇编语言时感受最深的地方,想起来很简单,写起来相当的不易。
首先,学习这门语言时如果能联系上以前学过的其他高级语言的知识,最重要的是一些思考问题,实现功能的逻辑的思考,会帮助我们很快的找到编写程序的思路和方向。
第二,学习汇编语言,首要问题是学习80X86指令系统。
指令的种类十分繁杂,但其格式却是统一的。
指令的操作数个数由该指令确定,可以没有操作数,也可以有一个或多个操作数,大多数指令要显示写出来,还有些操作数是隐含的。
7、
比较运算指令;
现在汇编课程已经结束,感觉不如其他语言学的好,但再不是第一天接触时的云里雾里了,已经有了初步的了解和熟悉,虽说不上得心应手,但简单的问题还是难不倒我的。
书本上的知识是有限的,课后的学习是无止境的。
想要把汇编学的很好,我想我还需要花更多的时间在课后的时间里。
以上便是我在学习汇编语言过程中所有的心得体会和一些想法,我会更加努力的去学习,达到自己满意的结果。
一学期的学习有很大收获,也让我意识到自己还有很多不足,很多需要学习的地方。
没有老师指导的日子里,我会找准自己的方向,自己再多学学。