想学好51单片机,是不是要先学习汇编语言?

想学好51单片机,是不是要先学习汇编语言?
另外微机原理和单片机用到的汇编有什么区别?是不是先学汇编语言会比较好学单片机?我想买王爽的《汇编语言》看看
我想知道单片机所用到的汇编和微机原理,或者说和单纯学汇编,是不是有区别的呢?我是直接看单片机书还是先从汇编语言学起呢?
大学里学过C语言,感觉的确比汇编好学 - -

就这些问题我来给你一个合理的解答,如有不对望请见谅!
首先,学好单片机不是说学好一门语言(汇编语言)就行的。汇编语言是我们在掌握和了解了单片机的工作原理后,对单片机进行软件开发的工具。想学好51单片机,你必须对单片机的结构和工作原理了如指掌,然后是对特殊功能寄存器的编程(即用汇编语言或C语言)来对单片机内部进行初始化,初始化是最关键的因为它是后继工作的必要条件,在此基础上才是用户的程序要实现的功能!
其次,汇编语言是针对不同机器的,它是面向底层硬件的。不同的机器有其自己的汇编指令,由于这个原因汇编语言不能在机器之间进行移植,即在这台机器上运行的汇编程序不能在其他机器上运行,要求两台不同机器实现相同功能,必须分别进行编程。而C语言就不一样了,它并不像汇编语言那样依赖硬件,所以具有很好的可移植性。所以,拿本汇编语言的书看是没有效果的,没准你看不下去,本来有的一点兴趣就被磨灭了,这样不好!
再次,上网购买一个单片机开发板用作平时的学习是很棒的,因为你在够买时会给你送一张CD盘,你面有很多资料,譬如KEIL C51软件(进行汇编,C语言等编程),还有PROTUES单片机仿真软件作为快速项目开发用。
最后,北航那本单片机的书不错,能在图书馆借一本就够了。前期,好好学习单片机的内部构造,以及单片机的初始化。接着是用汇编语言开发单片机,当你觉得汇编太麻烦,那就借几本关于C语言开发单片机的书,但汇编必须要回,因为汇编有助于我们对单片机内部构造有更深的了解。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-07-07
先逐一回答提问:
1、想学单片机不一定非要学汇编,但要成为单片机高手就一定要学汇编。
2、不同的CPU其汇编语言是不同的,但基本知识都是相通的。我上学时学的CPU是Z80,工作后自学的51单片机,虽然语句上有差别,但基本原理上没本质差别。
3、我个人认为汇编的学习与单片机硬件知识的学习最好不要剥离开,原因我后面细述。
4、学过C语言,实在不想学汇编也可以,但如果有条件最好补上这一课。

一般比较全面的基础单片机教材其结构一般有3种
1、单片机介绍+汇编+应用扩展示例。这种教材一般主要是讲单片机本身的,最好从头到尾完整的学习,除非你了解,否则尽量不要跳跃学习。
2、单片机介绍+C语言+应用扩展示例。这种教材往往以语言为出发点,对单片机本身的介绍比较简单。
3、其它:比如基于单片机的仿真软件、无线通讯应用等等,对单片机本身的介绍就更简单了。

汇编的学习其实对理解单片机的工作原理、流程等方面都会有较大提升的,而且会增加感性认识(这点很重要,C语言无法体会到)。另外,在一些实时性很强的应用中,有时使用C语言很难满足严格的时序要求,需要C和汇编配合使用的情况,这种事我在做一个CPU卡读写卡器时就遇到过。更何况你已经会C语言了,多学一样汇编有何不可?所以我建议你采用第1种。单片机的汇编真的不难,入门后你会体验到的。

还是学一下吧,技不压身。
第2个回答  2011-07-06
1、单片机汇编 跟微机原理里面的汇编有一点区别,单片机汇编会简单一点,比如说51的,命令少一些,比较容易学,可以根据一款单片机来学习汇编,边学边实践;
2、个人认为开始学单片机的话学习汇编还是有好处的,可以使你更深的了解到单片机的内部各个寄存器,每个寄存器的功能,对了解单片机是很有用的,以后编程还是要用C的,汇编可读性差,可移植性差,编程也比较困难,特别是大的项目,用汇编就更麻烦,我在学校的时候,曾经写过几千行的汇编程序,虽然现在已经很难看懂那些程序,但是感觉用汇编还是很有用的。
3、单片机学好的话,后面学习更高级一点的芯片编程,他们都有好多共同的东西,学习起来会很快。

希望能帮到你。
第3个回答  2011-07-06
我认为先学点汇编语言,汇编语言与微机原理的汇编类似,只是简单些。
汇编语言能帮助你理解语句执行的过程以及产生的效果和影响,
汇编学习一段时间之后,可以学C语言了,C语言入门学习比较简单,这样你可以对这两者进行比较。
在某些场合,为了提高执行效率,在C语言当中可以插入汇编程序来保证速度和时效。追问

那学习单片机的话是不是也要先学点汇编比较好?我大学有点C语言的基础,只不过现在工作需要用单片机,开发要用汇编 - -

追答

学习单片简单说是学习其指令系统,所以当然学习单片机也要先学汇编,开发用汇编可以在一定程度上提高指令效率和节省成本。另外有些单片机只有汇编,不能用C。

第4个回答  2011-07-06
直接学微机原理就行了,主要是了解基本的指令的运行原理就行了,还有微机的工作方式就行了,汇编语言不用单独学,比较C51的汇编与80x86的很大区别的,然后多看看C51的工作方式,寄存器,指令 接口这些才是最重要的!而且80x86里的汇编语言很多都是讲在DOS操作系统之下的,什么字符串啦 DOS调用啦 这些东西跟单片机都没关系,但是这些东西往往是你学习80x86汇编语言的障碍,所以根本就不用太仔细学汇编语言的,直接学C51就行了

学单片机之前一定要掌握汇编语言吗?
不需要。学会单片机的C语言即可。推荐郭天祥《10天突破单片机》。如果你把汇编弄通了,你会发现你对单片机本身已经没有兴趣。现在这个年代,没有真正用汇编写大项目的人了。赶紧C。有疑问联系我515439690 Q

学单片机要先学汇编语言吗?
如果要求快速入门可以先学c,如果是要搞研究方向或是需要提高到话可以学汇编,c语言跳过了很多单片机内部的东西,而汇编则更加注重单片机内部的操作,学什么就看你的目的了。

学单片机是先学汇编语言还是C语言?
我建议是先学汇编,我也是先学的汇编,现在网上大部分视频都是零起步,教c的,但是同一个程序用c编写要比汇编大很多,而且汇编能从硬件上认识单片机,编写出来的程序运行效率高,我是零基础学的,学了一段时间后自己看了点网上的视频,c也能完成一些简单的程序了(我的c也是零基础),所以我建议是先...

怎样才能学好单片机?是要先学C语言,好学汇编语言
1、扎实学好C语言,尤其搞清地址、指针、内存、管理概念和精髓 2、尽管学好汇编,更有利于对单片机原理的理解,并比C语言速度要快,但从目前的发展和单片机成本来看,从实用的角度,学习汇编,并不是一个值得推荐的选择;3、搞清51系列单片机基本原理和基本结构 4、会用KEIL C开发环境 5、知道一些基本的...

学单片机必须学汇编语言吗,还是学好c语言就足够了
先学c,汇编大致了解一下就可以了1、对于普通的项目,只要学好c就行了,但不是足够了。2、现在流行的单片机开发编程语言有汇编、c、c++。3、它们是可以相互依托的,比如要求开发速度,我们可以尽量用c或c++,因为它们都比用汇编完成任务速度要快。比如要求执行速度,我们必须考虑使用汇编,因为汇编的速度...

学习单片机,要一定的 汇编语言或者C语言基础吗
必须要会汇编和C语言。至于从哪个学起,看你对哪种语言跟熟悉吧。这两种语言各有优点,汇编可以让你更清楚的了解程序运行的内部情况,C语言通用性更强。

新手,51单片机和C语言,先学那个比较好,谢谢
单片机可以用汇编语言和C语言编写程序。大学教学51单片机,基本都是汇编语言,但是会有一门C语言课程;工作上最好选择C语言编程,因为每个单片机都有自己的汇编语言,你也不确定找的工作是关于51单片机、PIC单片机或者飞思卡尔单片机,所以很多人都是C语言编程单片机。以上仅供参考,怎么选择看你自己了,肯定都...

学单片机是先学汇编语言还是C语言?
先C语言,然后汇编。- -0,这么言简意赅鞭辟入里竟然还不采纳,卧槽。

初学单片机还需学习汇编语言吗?我现在从零开始学单片机,请教一下有...
只为了学单片机的话,不学也没关系,但如果你时间比较充足而且有想法深入学习的话,还是学学汇编比较好,因为汇编是直接对底层硬件进行操作,学好它,你会对底层硬件的运行原理了如指掌,这样你学其他的语言或者有关的硬件将会事半功倍,得心应手,当然前提是你的汇编也要学的比较扎实,不能只在表面。

学习单片机会心得
要想成为单片机高手,建议初学者首先学习汇编语言,学的差不多的时候,转入C语言学习。尽管汇编语言属于低级语言,编程效率低,但是较C语言具有目标代码简短,占用内存少,执行速度快等优点,更重要的是能使初学者尽快熟悉单片机的内部结构,并能对其进行精确的控制。汇编语言在单片机教材里面都会涉及,不需要...

相似回答