如果只是编计算机软件只要掌握C语言就够了
要是用于编写单片机片内程序 就要掌握硬件原理以及接口
基本和用汇编差不多 只是语言格式上的区别
汇编语言其实仍然是机器语言,虽然看起来是英文,但实际上汇编语言中差不多每一句指令都单独对应一句机器语言指令,这就好比汉字的"一"对应阿拉伯数字"1"一样,只有一少部分是经过变化的.
就是因为绝大多数汇编语言指令都与机器语言指令一一映射,所以通常说"汇编语言能直接对电脑硬件操作"(这总要比说"C++可以直接对硬件进行操作"要正确得多吧?)
除了机器语言之外的任何一种语言都需要编译程序,汇编语言的编译器非常小(例如masm的编译器只有几十到几百K).具体这些编译程序是用什么语言写成的,鄙人也不知道...
没有安装任何程序的计算机成为"裸机",它就是一堆硬件拼凑在一起,什么事情也做不了,有了裸机之后首先要安装编译器(此时的计算机可以出厂了),之后安装操作系统软件和硬件驱动程序,之后再安装各种应用软件(比如游戏软件)
我最后说的安装在裸机上的编译器是一个硬件,而不是软件,它是负责指令级并行,调度,以及运算逻辑等方面工作的.因此似乎应该把安装了编译器的电脑成为裸机比较好,之后再安装操作系统和应用软件.
你自己组装的电脑已经不是裸机了,因为它至少有一个操作系统(叫做文件管理系统更好),那就是DOS,比如你可以把你电脑上的Windows删掉看能否启动计算机,实际是可以的,因为有DOS.在DOS下可以新建文件目录,查看文件目录,复制删除文件(据说还可以浏览网页~不可思议
单片机有C51语言
单片机的汇编属于汇编语言,本质是一样的.由于汇编是直接操作硬件,所以硬件不同,语言也有一定的区别.如果会计算机的汇编,看单片机汇编很容易.
讲单片机原理的书一般都是从汇编讲起,这样有助于了解硬件,没有专门讲单片机汇编的书,买本讲原理的就可以了.
C语言道理一样,等学会单片机汇编,又有C语言的基础,看单片机的C也是很容易的.
单片机的汇编大部分和微机原理的汇编通用
C语言可以在单片机上用,但是要知道C语言并不是适用于单片机编程的语言,它所做的很多动作是在模拟汇编语言
如果不希望多花时间学习汇编语言的话,可以选用Keil C(uVision)编程,比较适用
世面上有很多的书值得推荐,但是自学可能比较吃力,最好是找本程序示例较多的书,配合练习比较好
差别不是很大,一般对C语言能很好掌握的话,对C51的使用基本不会产生什么问题.
可以参考一下“单片机原理.接口及应用--嵌入式系统技术基础” 清华大学出版社出版的,写的挺经典,不仅对C51语言做了详细的介绍,同时也对单片机的原理及应用做了很细致的讲解.