主页   电子元器件  单片机

六月 19 2020

单片机的编程语言


目录

1.BASIC编程语言
2.PL/M编程语言
3.汇编语言
4.C语言
5.哪种编程语言好

  作为计算机技术中的一个分支,单片机技术在电子产品领域的应用,丰富了电子产品的功能,也为智能化电子设备的开发和应用提供了新的出路,实现了智能化电子设备的创新与发展。对于初学者来说,很多人一开始经常会被单片机的各种各样的编程语言搞糊涂。因为单片机的编程有很多,但最常见的有四种,即汇编语言、C语言、PL/M和BASIC语言。那么究竟要学习哪一种编程语言好呢?下面先来了解一下这四种编程语言:

编程语言

编程语言

  1.BASIC编程语言

  BASIC是一种高级语言,它的英文含义是“初学者通用符号指令代码”,是在1965年5月,由美国科学家托马斯·库尔兹研制出来的。10多年后,微软公司把它移植到微型机上。几十年来,BASIC语言一直被认为是初学者编程的语言,它已经由QBASIC发展到VB#版本,具备了很多结构化思想和编程方式,如函数、模块、局部变量、全局变量、数据传递等.早期的BASIC语言由于生成的代码不是最终目标机器的代码,而是经过一个RUNTIME程序解释后运行的,所以执行效率低,但这种逐行解释的方法很容易找到程序中的错误,而不是当程序执行完才能显现出来.而单片机的BASIC编译器是直接将程序代码编译成相应芯片的机器码,不需要在单片机的内存中驻留RUNTIME程序,执行效率与其他编译器编译出来的一样.此外初学者还需要注意,BASIC为简化使用变量,所有变量都用浮点值。

  2.PL/M编程语言

  PL/M是一种高级语言,它由美国INTEL公司设计,主要用于Intel 公司生产的单片机和微处理器系统软件和应用软件的开发。作为高级语言,它更接近和体现人的设计思想。PL/M语言不仅具有一般高级语言的特点,而且还能象汇编语言那样直接利用CPU 的硬件特性进行程序设计。因而,与其它高级语言相比,功能多,用途更广泛,尤其在16位单片机应用领域更受到人们的普遍重视。

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

  3.汇编语言

  汇编语言是一种用助记符来表示机器指令的符号语言,是最接近于机器码的一种语言.其主要优点是占用资源少,程序执行效率高。由于它一条指令就对应一条机器码,每一步的执行动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。但是不同的类型的单片机,其汇编语言可能有点差异,所以不易移植。比如你在PICl2CESl8单片机上用汇编语言编了一个程序,到了STC89C51单片机上那可就运行不了,因为它们的指令系统是有区别的。

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

  4.C语言

  单片机的C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。C语言具有功能丰富的库函数,运算速度快,编译效率高,有良好的可移植性,而且可以实现直接对系统硬件的控制.此外,C语言程序具有完整的程序模块结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。

C语言

C语言

  5.哪种编程语言好

  单片机编程的语言既可以用C,也可以用汇编。用汇编的优势主要是程序可以被编程者优化,而不是由编译器优化,这样就可以绝对可控,程序的安全性和执行速度受编程者水平限制,不过总的执行速度较C语言快,代码占程序存储器的容量较C语言小。这样,汇编程序更适合程序存储器和数据存储器较小的老式单片机。但是,汇编程序毕竟是机器语言的汇编助记符,所以存在指令难记,指令功能弱的缺点,造成学习困难。

  C语言的优势与缺点正好与汇编相反。C语言毕竟是一种高级语言,具有较好的学习性,几乎不必记忆指令,学习容易,而且编译时的优化由编译器管理,一般不受编程者水平限制。由于机器优化的局限性,C语言总的执行速度较汇编语言慢,代码占程序存储器的容量较汇编语言大。这样,C程序更适合程序存储器和数据存储器较大的新式单片机。

  建议初学者先使用C语言快速入门,然后再研究汇编语言,优化程序设计。

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

相关文章

  • 基于LM358的单片机掉电保护电路设计 ...
    在单片机系统中为了防止突然掉电而造成数据丢失,一般需要把重要的数据存储在EEPROM中。由于EEPROM擦写寿命有限,故不宜程序每执行一遍,对其擦除一次。本设计提出了一种以LM35...
  • 基于AD620与单片机PIC10F206的指针检流计设计 ...
    目前指针检流计容易出现漂移的问题,因此本文讨论了基于仪表放大器AD620和6引脚PIC单片机的指针式检流计的设计方案。其方案:采用了2节5号电池供电并利用单片机进行功耗管理,有效地...
  • 基于AD7705与单片机的在线激光功率检测系统设计 ...
    利用Cx51的软单片机控制技术和AD7705模/数转换器结合,设计了一种在线激光功率检测系统。由于采用AD7705简化了硬件,该系统具有原理简单,造价低廉,智能操作,方便实用,误差...
  • 单片机是什么? ...
    从20世纪90年代开始,单片机技术就已经发展起来,随之时期的发展与高新科技的发展趋势,现阶段该技术性的实践活动运用日趋成熟期,单片机设计被运用于各行各业。目前,大家愈来愈高度重视单...
  • 单片机的原理与应用 ...
    现在单片机已渗透到我们日常生活中的各个领域,小到家用电器、仪器仪表,大到医疗器械、航空航天,无不存在着单片机的身影。一旦在某种产品上添加了单片机,便使得原产品向互联网靠拢,获得了“...
  • 单片机的分类有几种? ...
    目前,单片机正朝着高性能和多品种方向发展,将会进一步实现低功耗、小体积、大容量、高性能、低价格和外围电路内装化等要求。由于单片机的体积、结构和功能特点,在实际应用中可以完全融入应用...

0 条评论

留言

您的邮箱地址不会被公布

 
 
   
评分: