单片机开发是用C语言好还是汇编语言好

如题所述

汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的CPU,其汇编语言可能有所差异,所以不易移植。对于目前普遍使用的RISC架构的8bitMCU来说,其内部ROM、RAM、STACK等资源都有限,如果使用C语言编写,一条C语言指令编译后,会变成很多条机器码,很容易出现ROM空间不够、堆栈溢出等问题。而且一些单片机厂家也不一定能提供C编译器。而汇编语言,一条指令就对应,我们还是建议采用汇编语言比较好。而C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。C语言有功能丰富的库函数、运算速度快、编译效率高、有良好的可移植性,而且可以直接实现对系统硬件的控制。C语言是一种结构化程序设计语言,它支持当前程序设计中广泛采用的由顶向下结构化程序设计技术。此外,C语言程序具有完善的模块程序结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。因此,使用C语言进行程序设计已成为软件开发的一个主流。用C语言来编写目标系统软件,会大大缩短开发周期,且明显地增加软件的可读性,便于改进和扩充,从而研制出规模更大、性能更完备的系统对于目前普遍使用的RISC架构的8bitMCU来说,其内部ROM、RAM、STACK等资源都有限,如果使用C语言编写,一条C语言指令编译后,会变成很多条机器码,很容易出现ROM空间不够、堆栈溢出等问题。而且一些单片机厂家也不一定能提供C编译器。而汇编语言,一条指令就对应一个机器码,每一步执行什幺动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。所以在单片机开发中,我们还是建议采用汇编语言比较好。对于复杂而开发时间紧的项目时,可以采用C语言,但前提是要求对该MCU系统的C语言和C编译器非常熟悉,特别要注意该C编译系统所能支持的数据类型和算法。虽然C语言是最普遍的一种高级语言,但不同的MCU厂家其C语言编译系统是有所差别的,特别是在一些特殊功能模块的操作上。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-12-11
这个问题就如同吃饭一样。

我们吃饭不可能只吃一种。吃很多种饭不可能只用一种餐具。所以说,对于不同的开发项目,其使用的语言也会不同。

普通的小项目尽量使用C语言来开发。毕竟C语言直观、方便移植、易维护。而一些对时序要求严格的就需要用汇编了。用C的话会比较吃力。最好是C、ASM混编能熟练掌握。本回答被网友采纳
第2个回答  2013-12-11
初学者还是用C吧,汇编对于初学者来说还是太难了,主要是指令太多了,等C很熟了之后,可以考虑用汇编

单片机开发用什么语言
单片机编程的语言既可以用C,也可以用汇编。用汇编的优势主要是程序可以被编程者优化,而不是由编译器优化,这样就可以绝对可控,程序的安全性和执行速度受编程者水平限制,不过总的执行速度较C语言快,代码占程序存储器的容量较C语言小。这样,汇编程序更适合程序存储器和数据存储器较小的老式单片机。但是...

单片机用什么语言编程
1、C语言。单片机C语言是一种编译语言,具有编译语言的特点。C语言具有功能丰富的库函数、计算速度快、编译效率高、可移植性好,可直接控制系统。此外,C语言程序具有完整的程序模块结构,为软件开发中模块化程序设计方法的使用提供了有力的保证。2、汇编语言。它的主要优点是占用资源少,程序执行效率高。...

编写单片机程序用什么语言
在编写单片机程序时,通常可以选择C语言或汇编语言。对于初学者来说,建议首先学习C语言,因为相比汇编语言,C语言在处理单片机程序时更为简便。汇编语言虽然可以精确地控制硬件,但其复杂性较高,涉及到具体地址的计算。在大多数情况下,单片机运行的程序都是用C语言编写的,尽管这种C语言是经过变种的C51语...

单片机汇编和c有什么区别吗
单片机开发时选择使用C语言还是汇编语言,各有其优缺点。C语言编写出的代码具有较高的可读性,使得后续开发者能够较为容易地理解代码逻辑并进行扩展工作,这在团队协作中显得尤为重要。相比之下,汇编语言则因其高度依赖硬件架构,使得理解和维护代码变得更加困难,通常需要较长时间才能深入理解原作者的意图和...

单片机开发用C和汇编语言各有什么优缺点
1、C可以读性较强,容易让后继者接手进行扩展,汇编相对而言难度就大多了,一般人很难短时间内弄懂原开发者的原意和理清思路。2、C可移植性较强,一个单片机的程序稍加修改,可以移植到其他环境下使用,汇编程序几乎无法移植。3、汇编的时序性很强,可以精确严格按既定时序控制流程,C无法做到。4、汇编...

在使用单片机中,汇编语言和c语言各有什么优缺点?
一、汇编语言:缺点:汇编语言属于低级语言,难理解,编程效率低,编程容易出错。优点:程序执行效率高,占用资源少, 方便对最底层的一些东西进行操作。二、C语言:缺点:危险性高,开发周期长,可移植性不如JAVA。优点:语句少但是灵活度高,针对过程的言语相比于非结构化言语条理性很好接近人类的逻辑思维...

单片机开发是用C语言好还是汇编语言好
对于资源受限的单片机,汇编语言能够精确控制每个机器指令,便于调试和优化程序的内存占用。因此,在某些对性能要求极高或资源极其有限的应用中,汇编语言可能是更合适的选择。对于既要快速开发又复杂的工程项目,C语言是首选,但前提是对目标单片机的C编译器和其特有的库函数有深入了解。不同的单片机制造商...

请问工业上使用单片机编程,是C语言好,还是VB或其他的好?
而汇编语言则直接面向单片机,能够最大化发挥其性能。例如,在需要精确定时的情况下,汇编能通过精确控制指令执行,矫正每条指令带来的误差。相比之下,使用C语言实现相同功能较为困难,且可能带来额外的误差。高级语言如C提供了丰富的库函数和数据结构,简化了编程工作,使得开发者能够快速实现复杂功能。同时...

单片机用什么语言编写程序?
单片机一般用C语言或者汇编语言来编写程序。建议先学C语言,汇编语言要算地址,汇编语言比较难,所以建议先学C语言。汇编语言要算地址,大多数情况下,单片机运行的程序,都是C语言编写的。不过并不是一般意义上的C语言,而是变种后的C51语言。单片机是典型的嵌入式微控制器(Microcontroller Unit),由运算器...

单片机用什么语言编程
单片机可以使用多种编程语言进行编程,但最常见的是汇编语言和C语言。汇编语言是直接与单片机的硬件指令集相对应的语言,它使用助记符来表示机器指令,程序员需要了解单片机的指令集和硬件架构。汇编语言编写的程序具有直接控制硬件的能力,可以实现高效的程序执行和内存管理。然而,汇编语言编写程序相对繁琐,且...

相似回答