到底是用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 跳转至页
回复
打赏帖 | |
---|---|
rtthread硬件加密--2crc加密分析被打赏10分 | |
【分享开发笔记,赚取电动螺丝刀】mcxa156使用低功耗定时器适配硬件RTC框架被打赏26分 | |
【STM32F769】AI之与本地deepseek对接被打赏50分 | |
Buck电路工作在CCM模式下电感电流的计算公式是什么?被打赏5分 | |
buck电路工作原理被打赏5分 | |
基于MSPM0L1306的MODBUS-RTU协议通讯实验被打赏100分 | |
我想要一部加热台+多合一调试工具被打赏18分 | |
每周了解几个硬件知识+485硬件知识分享被打赏10分 | |
【换取手持示波器】TouchGFX应用移植自定义屏幕被打赏34分 | |
【换取手持数字示波器】树莓派PICO调试器官方固件本地化部署实践被打赏24分 |