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

想学好51单片机,是不是要先学习汇编语言?另外微机原理和单片机用到的汇编有什么区别?是不是先学汇编语言会比较好学单片机?我想买王爽的《汇编语言》看看我想知道单片机所用到的... 想学好51单片机,是不是要先学习汇编语言?
另外微机原理和单片机用到的汇编有什么区别?是不是先学汇编语言会比较好学单片机?我想买王爽的《汇编语言》看看
我想知道单片机所用到的汇编和微机原理,或者说和单纯学汇编,是不是有区别的呢?我是直接看单片机书还是先从汇编语言学起呢?
大学里学过C语言,感觉的确比汇编好学 - -
展开
 我来答
姜完善
2011-07-07
知道答主
回答量:20
采纳率:0%
帮助的人:20.1万
展开全部
就这些问题我来给你一个合理的解答,如有不对望请见谅!
首先,学好单片机不是说学好一门语言(汇编语言)就行的。汇编语言是我们在掌握和了解了单片机的工作原理后,对单片机进行软件开发的工具。想学好51单片机,你必须对单片机的结构和工作原理了如指掌,然后是对特殊功能寄存器的编程(即用汇编语言或C语言)来对单片机内部进行初始化,初始化是最关键的因为它是后继工作的必要条件,在此基础上才是用户的程序要实现的功能!
其次,汇编语言是针对不同机器的,它是面向底层硬件的。不同的机器有其自己的汇编指令,由于这个原因汇编语言不能在机器之间进行移植,即在这台机器上运行的汇编程序不能在其他机器上运行,要求两台不同机器实现相同功能,必须分别进行编程。而C语言就不一样了,它并不像汇编语言那样依赖硬件,所以具有很好的可移植性。所以,拿本汇编语言的书看是没有效果的,没准你看不下去,本来有的一点兴趣就被磨灭了,这样不好!
再次,上网购买一个单片机开发板用作平时的学习是很棒的,因为你在够买时会给你送一张CD盘,你面有很多资料,譬如KEIL C51软件(进行汇编,C语言等编程),还有PROTUES单片机仿真软件作为快速项目开发用。
最后,北航那本单片机的书不错,能在图书馆借一本就够了。前期,好好学习单片机的内部构造,以及单片机的初始化。接着是用汇编语言开发单片机,当你觉得汇编太麻烦,那就借几本关于C语言开发单片机的书,但汇编必须要回,因为汇编有助于我们对单片机内部构造有更深的了解。
lylxy1965
2011-07-07 · TA获得超过2413个赞
知道小有建树答主
回答量:436
采纳率:100%
帮助的人:220万
展开全部
先逐一回答提问:
1、想学单片机不一定非要学汇编,但要成为单片机高手就一定要学汇编。
2、不同的CPU其汇编语言是不同的,但基本知识都是相通的。我上学时学的CPU是Z80,工作后自学的51单片机,虽然语句上有差别,但基本原理上没本质差别。
3、我个人认为汇编的学习与单片机硬件知识的学习最好不要剥离开,原因我后面细述。
4、学过C语言,实在不想学汇编也可以,但如果有条件最好补上这一课。

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

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

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

希望能帮到你。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
淡_水_河_边
2011-07-06 · TA获得超过2179个赞
知道小有建树答主
回答量:732
采纳率:50%
帮助的人:454万
展开全部
我认为先学点汇编语言,汇编语言与微机原理的汇编类似,只是简单些。
汇编语言能帮助你理解语句执行的过程以及产生的效果和影响,
汇编学习一段时间之后,可以学C语言了,C语言入门学习比较简单,这样你可以对这两者进行比较。
在某些场合,为了提高执行效率,在C语言当中可以插入汇编程序来保证速度和时效。
追问
那学习单片机的话是不是也要先学点汇编比较好?我大学有点C语言的基础,只不过现在工作需要用单片机,开发要用汇编 - -
追答
学习单片简单说是学习其指令系统,所以当然学习单片机也要先学汇编,开发用汇编可以在一定程度上提高指令效率和节省成本。另外有些单片机只有汇编,不能用C。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
AllenOBrien
2011-07-06 · TA获得超过1376个赞
知道小有建树答主
回答量:1026
采纳率:100%
帮助的人:709万
展开全部
直接学微机原理就行了,主要是了解基本的指令的运行原理就行了,还有微机的工作方式就行了,汇编语言不用单独学,比较C51的汇编与80x86的很大区别的,然后多看看C51的工作方式,寄存器,指令 接口这些才是最重要的!而且80x86里的汇编语言很多都是讲在DOS操作系统之下的,什么字符串啦 DOS调用啦 这些东西跟单片机都没关系,但是这些东西往往是你学习80x86汇编语言的障碍,所以根本就不用太仔细学汇编语言的,直接学C51就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(10)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式