m0_72579657 2022-09-21 10:29 采纳率: 100%
浏览 73
已结题

micropython相比c有哪些优点?

micropython相比c有哪些优点?看到好多硬件都不用C用Mpy了

  • 写回答

1条回答 默认 最新

  • 爱音斯坦牛 全栈领域优质创作者 2022-09-21 10:55
    关注

    有帮助的话采纳一下哦!
    1.编译环境
    C语言、汇编语言在编写程序之前,需要下载编译环境,然而Micropython不需要任何编译环境,只需将开发板U口插入电脑,便可在电脑上出现一个盘符,跟插入U盘似得,然后打开U盘,直接记事本编辑main.py就行,它的舒服在于MicroPython不需要任何工具和环境,任何文本工具+1块开发板即可开发编译。
    2.操作难度
    汇编语言基本操作简单,但是要实现复杂的项目目标相对较难,代码冗长,调试查错困难;C语言有了语句和大量的库函数,相对汇编来说简单了;MicroPython有了比C更多的库函数,代码格式不仅变得简洁,在库的支持下很多函数和方法都不用自己再去写,直接import xx就可以,把类库导入就ok。以前点一个灯需要五六行代码,现在只需要1行代码就可以点亮LED,So Easy。
    3.程序结构
    汇编语言总体使用跳转结构,不管是子程序的调用还是循环或者散转理论上都是用跳转的方式,中断操作或强行出程序段的操作都需要对压栈有有精确的控制,要求非常严格;C语言总体使用循环结构或顺序结构,不再需要到处跳来执行程序,中断操作会自动进行压栈不需要人为干预,在时序要求高时可嵌入汇编提高效率;MciroPython可以使用C的程序结构或者使用线程结构,线程结构要求的是严格且合理的分配好线程工作时间不能出现冲突,对资源要有很好的把控,不能空挂线程浪费资源,理论上多线程可以更高效的运行,虽然单核同时只能运行单线程但是从宏观角度来说是同步的,在时间要求不严格的情况下可以有效的降低程序的编写难度。
    4.编写方式
    汇编在不使用宏的情况下,通常都是指令直接操作单元,需要记忆大量的数据单元用途,且由于程序行数较多(可能会到一两千行)需要来回翻看程序代码,整个编写流程比较繁琐。而且由于都是8位的单元复杂的数据运算需要嵌套C语言来完成;C语言使用使用任何变量都需要先定义,相比不用特意去记忆变量名称,整体结构清晰多数编程软件都有跳转子程序功能,查找程序块非常方便。有大量的成品头文件包含各种常用函数,相对少了很多复杂的程序代码编写;MicroPython继承了C的编写优点,且不需要预定义,不需要任何结束符号,只需要换行即可继续编写,但是要注意一些特殊情况下Tab键的使用。
    5.易读性
    汇编本身难读因为标记少且直接操作单元,视觉结构上不仅就两列代码而且需要不停的跳转所以本身在读取上就很难;C语言简单的操作代码比较清晰,但是复杂的就会方法中找方法,很多复杂的代码非本人去找,就让人感到非常头疼;MicroPython相比C有更好的易读性,且由于取消了很多特殊符号整体感觉也比较清晰,很多方法都是单独写成单独的库,直接调用即可,每个功能都有单独的类库,看起来极其方便,一目了然。

    说了这么多优势难道就没缺点啊,肯定有啊,那就是效率低,贵。在嵌入式开发行业C语言就是神,甚至很多资源紧张的项目还得使用汇编来搞定!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月30日
  • 已采纳回答 9月22日
  • 创建了问题 9月21日

悬赏问题

  • ¥15 结构功能耦合指标计算
  • ¥20 visual studio中c语言用ODBC链接SQL SERVER
  • ¥50 AI大模型精调(百度千帆、飞浆)
  • ¥15 非科班怎么跑代码?如何导数据和调参
  • ¥15 福州市的全人群死因监测点死亡原因报表
  • ¥15 Altair EDEM中生成一个颗粒,并且各个方向没有初始速度
  • ¥15 系统2008r2 装机配置推荐一下
  • ¥15 悬赏Python-playwright部署在centos7上
  • ¥15 psoc creator软件有没有人能远程安装啊
  • ¥15 快速扫描算法求解Eikonal方程咨询