单片机中的C语言和汇编语言,应该如何选择?
共 1 个回答
单片机又称单片微控制器,它是把一个计算机系统,包括cpu、ram、rom、定时/计数器和多种i/o接口集成到一个芯片上。由于单片机的种种优点和特性,其应用领域极其广泛。单片机系统同样也由硬件系统和软件系统构成,因此涉及到程序的编写问题。下面我们来介绍一下汇编和C语言吧:
汇编语言是一种用助记符来表示机器指令的符号语言,是最接近于机器码的一种语言。其主要优点是占用资源少,程序执行效率高。由于它一条指令就对应一条机器码,每一步的执行动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。
单片机的C语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。c语言具有功能丰富的库函数,运算速度快,编译效率高,有良好的可移植性,而且可以实现直接对系统硬件的控制。此外,c语言程序具有完整的程序模块结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。
与汇编语言相比,C语言有如下优点:
① 对单片机的指令系统不要求了解,仅要求对5l的存储器结构有初步了解,至于寄存器分配、不同存储器的寻址及数据类型等细节均由编译器管理,降低了对编程人员的要求。
② 程序有规范的结构,可分为不同的函数。这种方式可使程序结构化,将可变的选择与特殊操作组合在一起,改善了程序的可读性。
③ 编程及程序调试时间显著缩短,从而提高效率。提供的库包含许多标准子程序,具有较强的数据处理能力,已编好程序可容易的植入新程序,因为它具有方便的模块化编程技术。
单片机c语言作为一种非常方便的语言而得到广泛的支持,c语言程序本身并不依赖于机器硬件系统,基本上不做修改就可根据单片机的不同较快地移植进来。
想知道更多关于单片机的知识吗?《60天学会STM32单片机线上培训班》即将开课,专家辅导,在线答疑,一对一解决问题,为小白量身打造,想学单片机的同学们不要错过~
《60天学会STM32单片机线上培训班》
报名费用:3500元/期
开班时间:10月12日
▼ 扫码报名 ▼
微信扫一扫,免费领取部分视频课程
1、如何用多种方式来点亮一个LED灯
(共3集)
2、单片机课程试看
(前5集)
* 如遇扫码不成功,请手动添加Weixin
萌萌:zfdzkf
笑笑:zfdzkf3
可可:15388007206
思思:15387546803
西西:15312389057
雯雯:15380729057
小汐:15367947617
■ 一共60个学习日,全新录播视频(60小时+)+晚课的模式学习(手把手教学2小时)
* 注意:晚课比视频重要得多
■ 晚课时间为每周一至周五 19:30-21:30
■ 此期间可以在班级群内提出你的问题,导师实时带班制
■ 选用ARM Cortex M0 内核的主流单片机 STM32F030C8 为平台
■ 新手也能学习
从专家级工程师角度,教你掌握单片机基础原理,包括计算机基础知识,单片机的组成,简单的硬件基础知识,单片机软件的编程基础,编译和代码烧录过程等
■ 汇编语言和C语言双语言教学,让你彻底搞懂单片机底层原理
■ 软件与硬件结合授课,即讲软件,也讲涉及到的硬件知识
■ 不依赖任何官方源文件和库文件,所有代码均手把手敲出每一个字符
■ 报名立即赠送配套单片机开发板全套,亲自动手实操各个技能
注意:为什么我们要用双语言来结合教学?
我们知道只有学会了汇编才能理解单片机的底层是怎么工作的,市面上汇编语言是很多工程师没有重视的内容,实际上想要成为一名单片机大牛,这是不可绕过的。汇编语言对比C语言来说,是更加底层的操作,如果只用C语言编程,那么就是仅仅只是给单片机下达指令要求单片机怎么控制,并不知道单片机内部是如何执行代码的,知其然而不知其所以然,事实上在做一些高端算法的时候,是离不开汇编的,为了提高代码的执行效率汇编是必须要用到的,我们也经常会看国外的很多项目中C编嵌汇编的写法。就好比,学习武功秘籍只学会了招数,而不懂内功心法,这样注定是成不了绝顶高手的。
部分课程截图 ↓
■ 张飞实战电子工作室自主研发课程专用开发板*1
■ 烧录器*1 适配器*1
■ 报名课程马上就能快递到家
- 1