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

作者&投稿:杜芳 (若有异议请与网页底部的电邮联系)
单片机编程用汇编好还是C语言好?~

单片机编程,C语言编程但很好。
大致分成三类:机器语言、汇编语言、高级语言。机器语言由于繁琐容易出错,大部分用户已经不再便用。
1.单片机汇编语言







汇编语言是一种符号语言,它使用文字助记符来表示机器指令。它是最接近机器代码的语言。它的主要优点是占用资源少,程序执行效率高。由于每条指令对应于一个机器码,所以每一步的执行都非常清楚。







并且程序的大小和栈调用都易于控制,调试也更加方便。但是不同类型的单片机,其汇编语言可能会有一点不同,所以移植起来并不容易,因为它们的指令系统是不同的。但掌握汇编语言可以帮助我们理解影响四川语学习效率的特殊规律。







例如,了解汇编语言指令可以让您使用芯片内ram作为变量,因为芯片外变量需要多个指令来设置访问的累加器和数据指针。







类似地,只有汇编编程经验才能防止在需要浮点数和启用函数时创建大型、低效的程序,这在没有汇编语言的情况下是无法做到的。







2.单片机的C语言







MCUC语言是一种经过编译的程序设计语言,它兼顾了多种高级语言的特点,具有汇编语言的功能。C语言具有丰富的库函数,计算速度快,编译效率高,可移植性好,并能实现对系统硬件的直接控制。
此外C语言程序具有完整的程序模块结构,为软件开发中的模块化编程方法提供了强有力的保证。与组装相比,具有以下优点:







MCU的指令系统不需要知道,只需要对51的内存结构有一个初步的了解,对于寄存器的分配,不同的内存寻址和数据类型等细节都由编译器来管理。程序有一个正式的结构,可以分为不同的功能。这使得程序可以结构化,结合变量选择和特殊操作,并提高程序的可读性。







大大减少了编程和调试时间,从而提高了效率。所提供的库包含许多具有强大数据处理能力的标准子例程,由于其方便的模块化编程技术,可以很容易地将这些子例程编程到新程序中。







功能强大灵活,库中包含了很多标准的子程序,具有较强的数据处理能力,可以方便地编程植入新的程序,因为它具有方便的模块化编程技术。







MCUC语言作为一种非常方便的语言而得到了广泛的支持,(语言程序本身不依赖于机器硬件系统,基本上不根据单片机的修改就可以将U的不同之处快速移植过来。)







利用单片机c语言进行编程,已经成为单片机软件开发的主流,作为一门综合性的技术和参与开发的大型软件系统,单片机开发人员最好能够掌握基本的c语言编程。

扩展资料:
SCM语言







MCU支持三种高级语言,即PL/M、C和BASIC。C语言是一种通用的编程语言,其码率高,数据类型和运算符丰富,并具有良好的程序结构,适用于各种应用程序的设计,是一种广泛应用的单片机编程语言。







单片机的C语言采用C51编译器(简称C51)。C51生成的目标代码短小、快速、存储空间小,符合C语言的ANSI标准,生成的代码遵循Intel目标文件格式,可与A51汇编语言或PL/M51语言目标代码混合使用

由于汇编倾向于直接使用硬件底层的东西,汇编执行效率很高,但是程序写起来麻烦,c写起来简单,但是执行效率就差些,c是介于高级遇见与机械语言之间的存在(更接近于高级语言,或者说就是高级语言),各有优缺点,所以有很多程序是混着编的,还有很多库都是汇编写的,启动代码也是汇编,但是汇编也有很多种,arm与51就不通用,存在差别。

目前很多单片机编程已经使用C语言编程
相对汇编来说
更容易开发
所以没有特别的要求
建议使用C语言编


学习单片机是用汇编语言好呢?还是用c语言好呢?
C相对容易读写。对于新手,相对来说,C容易上手和理解,在算法上也有自己的函数,而汇编必须自己编写各种函数。所以各有优劣,有时候优点也是缺点。编程主要还是思路,也就是流程,语言只是个工具,用熟了都好用。

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

单机片c语言和c语言有什么区别!请详细说一下好不好!
单片机C语言就是用C语言来写单片机程序。之所以要用C来写是因为它比其他语言优越(仅相对于单片机来说),因为它是个中级语言,比汇编能有更多的高级函数调用,比C++又有更多的底层操作函数。但并不是说用别的语言就不能写单片机程序,只是没C那么方便。单片机C语言和C语言没有本质区别,前者只是后者的...

C语言与单片机C语言的区别 急求
1、单片机中C的语法一般都对 ANSI C有些扩展,及一些特殊写法 如C51扩展的 data xdata bit sbit 一类的,还有一些中断程序写法 void int() interrput 1 一类的。2、C是一门语言,由对应平台的编译器编译成对应平台汇编的程序,各平台的汇编不一样,当然编译器也不一样 DOS上的TC2 TC3 WINDOWS上...

用C语言编写一个单片机控制LED灯闪烁变化的编程 急用!!!
C语言实现LED灯闪烁控制配套51单片机开发板。include \/\/包含单片机寄存器的头文件 \/***函数功能:延时一段时间 \/ void delay(void) \/\/两个void意思分别为无需返回值,没有参数传递。{ unsigned int i; \/\/定义无符号整数,最大取值范围65535。for(i=0;i<20000;i++) \/\/做20000次空...

c++和c语言有什么区别啊?那我们单片机用什么编程啊?
算法是程序设计的基础,好的设计如果没有好的算法,一样不行。而且,“C加上好的设计”也能写出非常好的东西。对语言本身而言,C是C++的子集,那么是什么样的一个子集?从上文可以看出, C实现了C++中过程化控制及其它相关功能,而在C++中的C(我称它为“C+”),相对于原来的C还有所加强,引入...

如何用C语言编写:设计一个时间片轮转调度算法实现处理机调度的程序
设计一个时间片轮转调度算法实现处理机调度的程序。三、实验指导 1.实验中使用的数据结构:1)PCB进程控制块 其中包括参数①进程名name;②要求运行时间runtime;③优先数prior;④状态state;⑤已运行时间runedtime。2)为简单起见,只设运行队列,就绪链表两种数据结构,进程的调度在这两个队列中切换,如图...

单片机c语言编程?
学习单片机C语言,首先要了解这两个东西是什么。单片机入门编程主要是学习C语言,其次是电路和编程语言。单片机C语言程序设计学习中必读的模拟电、数字电、电路三本书,为接下来的学习做铺垫。看书的目的是因为网上教程太多,容易出现偏差。其实只要能懂电路原理,就能开发单片机软件。简介单片机又称单片微...

怎样用2个按键让51弹片机P1 P2口输出高电平和低电平,用C语言怎样编?
P1,P2口都有8条线哦,假定按键1在 P10口 按键2在 P11口 两个输出口分别为 P20 P21 我写个主循环的一部分。while(1){ if(P10==0) P20=0;else P20=1;if(P11==0) P21=0;else P21=1;}

8031单片机c语言编程
对于8031本身,肯定是汇编实现基本的内核。楼主的说法可能有问题把。应该是对于操作过程的编程。在这一点上和8051的编程基本没有区别,c语言是通用的嵌入式编程语言。

科尔沁右翼中旗17795323994: 单片机开发是用C语言好还是汇编语言好 -
归欧华益: 汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言.其主要优点是占用资源少、程序执行效率高.但是不同的CPU,其汇编语言可能有所差异,所以不易移植.对于目前普遍使用的RISC架构的8bitMCU来说...

科尔沁右翼中旗17795323994: 单片机的编程用C语言好还是汇编语言好.为什么? -
归欧华益: 一般都用C语言编程.只有在C解决不了和代码效率比较高的时候才会使用汇编.很明显,C语言容易编程,更容易模块化编程,容易学习,会的人多.编写同一个程序,C语言所花的时间平均比汇编短很多.而且对应不同的单片机平台,汇编语言都是不同的,而C语言是通用的. 鉴于C语言有这么多好处,建议你用C语言编程,现在随着编译器功能的强大,如KIEL,基本上没有C语言处理不了的单片机问题了. 现在的硬件技术的发展,硬件成本越来越低,在代码效率不高的时候可以通过提升硬件的水平来实现系统的实时性需求.因此,在很多时候,代码的优化工作量减少了很多. 总之,C语言编程优于汇编.C语言是硬件的语言.

科尔沁右翼中旗17795323994: 单片机编程用汇编好还是C语言好? -
归欧华益: 开发当然是用C,又快又易懂好维护,但是想要优化程序还是要懂汇编的,要不然实现同样一个功能的程序,好的程序员可以把程序设计得又短又快,而不做优化的可能会又臭又长,2K以下可以搞定的,你非要搞到4K以上去那最终产品的成本每个至少会相差几毛到一两块钱,而且成本升高时质量却是下降的,这样当然就不好了,所以我个人认为做单片机编程,应当是汇编和C都会才是最好的,次一点的是会C,且能大致看懂汇编,可以帮助优化C程序, 只会汇编,一个程序开发下来,得花几周到几个月,开发成本太高了,不值得 只会C完全不懂汇编,那也是很难做出高质量的单片机程序的

科尔沁右翼中旗17795323994: 给单片机编程用C语言好还是用汇编语言好 -
归欧华益: 汇编逻辑简单,但代码复杂;C刚好相反,所以最好汇编与C结合使用.如果C好的话,可以全用C.

科尔沁右翼中旗17795323994: 单片机开发是用汇编好还是C语言好哪个更实用
归欧华益: 可以说是各有所长吧.汇编语言最大的优势就是执行速度快,缺点就是代码可读性太差,对于大型程序来说,使用汇编进行开发会导致代码维护困难、开发周期长.而C语言相比汇编,在执行速度上面会稍慢一些,但是代码的可维护性很高,所以当前的单片机开发一般还是以C语言为主,在进行核心部分的代码编写时,如果对执行速度有要求,可以采用在C语言中嵌入汇编的方式.

科尔沁右翼中旗17795323994: 单片机开发是用汇编好还是C语言好哪个更实用 -
归欧华益: 汇编的优势是代码的运行时间精确可控, 代码的运行效率、代码量等都是很直观可控的,运行效率、代码存储量都可以做到很好;缺点是编程思路不直观,理解性和维护性都很差,并且不同平台之间很难通用,导致代码的移植性差,重用率低....

科尔沁右翼中旗17795323994: 大家对单片机编程是用c还是用汇编好 -
归欧华益: 由于汇编倾向于直接使用硬件底层的东西,汇编执行效率很高,但是程序写起来麻烦,c写起来简单,但是执行效率就差些,c是介于高级遇见与机械语言之间的存在(更接近于高级语言,或者说就是高级语言),各有优缺点,所以有很多程序是混着编的,还有很多库都是汇编写的,启动代码也是汇编,但是汇编也有很多种,arm与51就不通用,存在差别.

科尔沁右翼中旗17795323994: 单片机编程用C语言好还是用汇编好
归欧华益: 两种言各有各的优点、缺点,汇编编程在有些方面很难编,使语言可阅读性变差,但他的实时性很好,而C在这方面就略差,不过,随着单片机的发展,这方面越来越小了,不过在某些工业控制中,C是代替不了汇编的 最好两种都要学啦,两种结合才是高手,以单C为主体调用汇编,有这方面的书的,去了解下吧,加油咯·

科尔沁右翼中旗17795323994: 学习单片机是用汇编语言好呢?还是用c语言好呢? -
归欧华益: 没什么区别,都可以.相对来说,汇编指令较少,容易记,对于控制硬件来说比较直接,可以自己控制寄存器的使用,但写起来代码多些,对寄存器要合理分配.C相对来说写起来代码少一些,不用考虑寄存器分配,C会自己分配,但相对来说寄存器分配不够直接.如果需要调试,跟踪起来,相对汇编还是有优势的,可以跟踪寄存器的值,因为寄存器都是自己定义的,比较直接,控制硬件也比较直观.C相对容易读写.对于新手,相对来说,C容易上手和理解,在算法上也有自己的函数,而汇编必须自己编写各种函数.所以各有优劣,有时候优点也是缺点. 编程主要还是思路,也就是流程,语言只是个工具,用熟了都好用.

科尔沁右翼中旗17795323994: 单片机学C语言好还是汇编好?
归欧华益: 如果你想成为一个单片机工作者,这两种语言都得学的呵! 但是现在比较大的工程基本都是用C开发的,不过汇编主要适合比较小型的开发,代码量比较小的比较适合用汇编. 对于程序它们各有优点,C语言较简单但生成文件HEX相对汇编要大一些!汇编对于比较大的工程,不易于编写,代码量过大!

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网