到底是用C好,还是用汇编```````````
共6条
1/1 1 跳转至页
C语言和汇编语言在开发单片机时各有哪些优缺点?哪个好呢?

个人觉得没有可比性,该用汇编的地方就用汇编,该用C的地方就用C。一般来说汇编使用指征有以下几种情况中的一种或几种:
1. 没有支持的C编译器。
2. 程序微小且简单,没有必要用C。
3. 尚不具备执行C语言程序的条件(CPU启动初始化代码,堆栈环境尚未建立)。
4. 经常、频繁被调用的函数(如IO读写函数inportb等和其它经常使用的硬件驱动函数)
5. 与架构相关无法直接通过C实现的函数(如专用寄存器访问等函数,部分操作系统底层函数,典型地如内存管理相关函数)
6. 对执行效率要求严格的程序(如memcpy等标准函数库)
7. 对执行时间控制要求严格的程序(如us级的功率器件门级触发程序,部分操作系统原语实现函数)
8. 对代码量要求严格的程序(RAM、ROM等资源不充足的微型设备)
对嵌入式软件开发来说,C和汇编就学习和使用,不能只学哪一门,应该结合起来使用。对32位CPU的系统来说,通常是少量汇编和大量C的结合-只有部分函数使用汇编书写,其它绝大多数代码用C或者C++。而8位和16位系统从资源和应用目的来说,通常汇编的使用比率稍微高一些。。。。。。。
啊个人理解,欢迎大虾们指教。
共6条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
分享一种检测按键状态的方法被打赏20分 | |
周末总结一下,STM32C0系列的开发经验被打赏50分 | |
【Cortex-M】Systick Timer使用被打赏10分 | |
分享汽车防盗系统的组成与分类(一)被打赏5分 | |
VOFA+波形显示+JYD-31蓝牙发送和解析不定长数据被打赏10分 | |
【换取手持数字示波器】-STM32F4PWM控制LED灯管亮度被打赏22分 | |
【换取手持数字示波器】STM32F4驱动RPR-0521RS照度、接近一体型传感器被打赏23分 | |
宏定义和const关键字定义被打赏5分 | |
【分享开发笔记,赚取电动螺丝刀】几个单片机I2S外设的BLCK时钟对比被打赏20分 | |
【功率监测与控制系统DIY活动成果贴】DIY功率计与LabVIEW数据采集被打赏100分 |