学习的不同阶段,适合用不同的语言,刚刚入门学习,由于需要掌握单片机的基础知识,适合用汇编语言,这样有利于加深理解单片机。对于初学者来说,很多人一开始经常会被单片机的各种各样的编程语言搞糊涂。大多数情况下,单片机运行的程序,都是C语言编写的。不过并不是纯粹的传统C语言,而是变种后的C51语言。那么究竟要学习哪一种编程语言好呢?下面先来了解以下这几种编程语言:

单片机编程用哪种语言好?各种单片机编程语言对比

    1.最简单的语言——BASIC

 

    1964年BASIC语言正式发布。是由达特茅斯学院院长、匈牙利人约翰·凯梅尼(JohnG.Kemeny)与数学系教师托马斯·库尔茨(ThomasE.Kurtz)共同研制出来的。该语言只有26个变量名,17条语句,12个函数和3个命令。这门语言叫做“初学者通用符号指令代码。BASIC是一种高级语言,它的英文含义是“初学者通用符号指令代码”。10多年后,微软公司把它移植到微型机上。几十年来,BASIC语言一直被认为是初学者编程的语言,它已经由QBASIC发展到VB#版本,具备了很多结构化思想和编程方式,如函数、模块、局部变量、全局变量、数据传递等.早期的BASIC语言由于生成的代码不是最终目标机器的代码,而是经过一个RUNTIME程序解释后运行的,所以执行效率低,但这种逐行解释的方法很容易找到程序中的错误,而不是当程序执行完才能显现出来.而单片机的BASIC编译器是直接将程序代码编译成相应芯片的机器码,不需要在单片机的内存中驻留RUNTIME程序,执行效率与其他编译器编译出来的一样.此外初学者还需要注意,BASIC为简化使用变量,所有变量都用浮点值。

 

    2.PL/M编程语言

 

    PL/M是Intel从8080微处理器开始为其系列产品开发的编程语言。它很像PASCAL,是一种结构化语言,但它使用关键字去定义结构。PL/M编译器好像汇编器一样可产生紧凑代码。PL/M总的来说是\"高级汇编语言\",可详细控制着代码的生成。但对51系列,PL/M不支持复杂的算术运算、浮点变量而无丰富的库函数支持。PL/M是一种高级语言,它由美国INTEL公司设计,主要用于Intel公司生产的单片机和微处理器系统软件和应用软件的开发。

 

    但对51系列的单片机来说,PL/M不支持复杂的算术运算、浮点变量而且无丰富的库函数支持,学习PL/M无异于学习一种新语言,难度相对较大,需要花费较多的时间和精力。

 

    3.汇编语言

 

    汇编语言由于机器语言的难以理解,莫奇莱等人开始想到用助记符来代替0,1代码,于是汇编语言出现了。由于它一条指令就对应一条机器码,每一步的执行动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。但是不同的类型的单片机,其汇编语言可能有点差异,所以不易移植。比如你在PICl2CESl8单片机上用汇编语言编了一个程序,到了STC89C51单片机上那可就运行不了,因为它们的指令系统是有区别的。

 

    单片机的汇编语言非常像其他汇编语言,指令系统比第一代微处理器要强一些,但单片机拥有不同存储区域使得其编程变得复杂一些,可是作为一位电子工程师,懂得汇编语言就可帮助你了解影响任何语言效率的特殊规定。例如,懂得汇编语言指令就可以使用在片内RAM作变量的优势,因为片外变量需要几条指令才能设置累加器和数据指针进行存取。同样的,当要求使用浮点数和启用函数时也只有具备汇编编程经验才能避免生成庞大的、效率低的程序,对于这方面的编程,没有汇编语言是做不到的。

 

    4.C语言

 

    C语言的祖先是BCPL(BasicCombinedProgrammingLanguage)语言,在1970年美国贝尔实验室的KenThompson在BCPL语言的基础上,设计出了B语言。接着在1972到1973年间,美国贝尔实验室的DennisM.Ritchie在KenThompson的基础上设计出了C语言。单片机的C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。C语言具有功能丰富的库函数,运算速度快,编译效率高,有良好的可移植性,而且可以实现直接对系统硬件的控制.此外,C语言程序具有完整的程序模块结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。

 

单片机编程用哪种语言好?各种单片机编程语言对比

 

    那我们单片机编程用哪种语言好?

 

    单片机编程的语言既可以用C,也可以用汇编。汇编语言不像其他大多数的程序设计语言一样被广泛用于程序设计。在今天的实际应用中,它通常被应用在底层,硬件操作和高要求的程序优化的场合。驱动程序、嵌入式操作系统和实时运行程序都需要汇编语言。

 

    单片机C51语言是由C语言继承而来的。和C语言不同的是,C51语言运行于单片机平台,而C语言则运行于普通的桌面平台。C51语言具有C语言结构清晰的优点,便于学习,同时具有汇编语言的硬件操作能力。对于具有C语言编程基础的工程师,能够轻松地掌握单片机C51语言的程序设计。

 

    一般来说,启动部分(基础硬件的初始化),往往是由汇编语言完成的。除此以外,一些要求时效性特别强,效率要求特别高时,也需要使用汇编语言完成。建议初学者先使用C语言快速入门,然后再研究汇编语言,优化程序设计。

 

    以上就是单片机的编程语言介绍了。总而言之,学习的不同阶段,适合用不同的语言。如果是刚刚入门学习的,由于需要掌握单片机的基础知识,适合用汇编语言,这样有利于加深理解单片机。在熟练之后,用C语言编程,能够节省不少精力和时间。如果是经验丰富的或者高手,哪一种编程语言都适合。