C51编译器能对C语言程序进行高效率的编译,生成高效简洁的代码,在大多数的应用场合,采用C语言编程即可完成预期的任务,但是,在有些场合还是会用到汇编,例如在下面的几种情况下,采用汇编可能会有很多好处:

1、已有程序的移植:在单片机领域工作很久的工程人员可能会保留有很多的早期用汇编语言编制的程序模块,并且这些模块已经经过实际应用的验证,如果重新用C编程,可能工作量很大,这时就可以用嵌入汇编的方式把以前的汇编模块植入新的应用,可以明显的加快开发的进度。

2、局部功能需要足够短的执行时间:在有些应用中,部分的功能模块需要有很高的执行效率,而有些汇编的指令在C中没有对应的指令,这给我们对单片机的高效操作带来困难,嵌入汇编可是我们的程序执行更有效率。

3、对一些特定地址进行操作:在C中我们要对特定地址进行读写,一般用以下两种方式:用_AT_指令定义变量;定义指向外部端口或数据地址的指针;在汇编中只需要使用MOVX A,@DPTR或MOVX @DPTR,A就可以了,这样可以增强程序的可读性。

◆◆

评论读取中....

请登录后再发表评论!

◆◆

修改失败,请稍后尝试

keil c支持汇编语言吗,keil中用汇编实现hello.c的功能相关推荐

  1. KEIL 5.38的ARM-CM3/4 ARM汇编设计学习笔记3——串口Stdio实现

    KEIL 5.38的ARM-CM3/4 ARM汇编设计学习笔记3--串口Stdio实现 一.介绍 任务目标 二.工程创建 三.软件设计 第一步,BSP构建 1, 添加前面的pll_config文件 2 ...

  2. KEIL 5.38的ARM-CM3/4 ARM汇编设计学习笔记4——Directives

    KEIL 5.38的ARM-CM3/4 ARM汇编设计学习笔记4--Directives 一.若干重要的DIRECTIVE介绍 二.一些概念 三.Directives详细介绍 1,GET/INCLUD ...

  3. 关于8051汇编语言的keil中出现的A45: UNDEFINED SYMBOL (PASS-2)错误

    关于8051汇编语言的keil中出现的A45: UNDEFINED SYMBOL (PASS-2)错误 ORG 0000HLJMP MAINORG 000BH ;提示错误 error A45: UND ...

  4. 汇编语言定义变量c,汇编c语言变量

    广告 Apple iPad,AirPods Pro,Bose耳机,机械键盘,健身环等着您 由于c ++支持重载,因此可以使用相同的函数名称但不同的参数类型定义函数. 在编译期间,编译器根据函数的参数类 ...

  5. KEIL MDK简介,如何安装KEIL MDK下载程序

    1. KEIL MDK简介 RealView MDK开发套件源自德国Keil公司,被全球超过10万的嵌入式开发工程师验证和使用,是ARM公司目前最新推出的针对各种嵌入式处理器的软件开发工具.RealV ...

  6. Keil MDK 将升级为 Keil Studio,你想要的黑色主题来了,附手把手使用教程

    关注+星标公众号,不错过精彩内容 编排 | strongerHuang 微信公众号 | 嵌入式专栏 看到标题,你是不是很吃惊? 是的,你没看错,Keil或将迎来一次全新的升级. 本文带你认识Keil ...

  7. Keil C51工程转VSCode Keil Assistant开发全过程

    Keil C51工程转VSCode Keil Assistant开发全过程 ✨这里以stc15W408AS为例.

  8. doodoo.js发布1.1.0 -- 中文最佳实践Node.js Web快速开发框架,支持Koa.js, Express.js中间件。包含多项功能改进,及Bug修复。...

    2019独角兽企业重金招聘Python工程师标准>>> doodoo.js发布1.1.0 -- 中文最佳实践Node.js Web快速开发框架,支持Koa.js, Express.j ...

  9. Ceph新长支持稳定版本Luminous(12.x.x)新功能总结

    通用功能: 目前,Ceph拥有一个操作简单,基于Web的内置仪表板,用于监控群集状态.(Ceph Dashboard具体可以参阅Ceph官网中文文档:Ceph luminous 新功能之内置dashb ...

最新文章

  1. 最落寞的C9高校:从未没落
  2. ajax和jsonp没有半点关系,跨域问题
  3. 【鸿蒙 HarmonyOS】HarmonyOS 开发环境搭建 ( Node.js 安装 )
  4. STL中mem_fun与mem_fun_ref的区别[转]
  5. AC自动机-洛谷3121 [USACO15FEB]审查(黄金)Censoring (Gold)
  6. idea复制maven项目,source root为原项目的解决方法
  7. Java实现pow共识算法_POW+POS混合共识算法
  8. [软件]提高日常操作电脑的效率
  9. Arch Linux 安装 Virtualbox 4.2.0 备忘录
  10. POJ 2976 Dropping tests | 01分数规划
  11. CSS Lint-线上CSS检测工具 让你的样式表更正确精简
  12. Oracle JDE系统日常维护和巡检
  13. idea添加scala环境_Scala篇:Scala环境及IDEA配置
  14. HDU 5857 Median (推导)
  15. startActivitystartActivities有什么不同?
  16. 2022中国汽车品牌魅力指数排名:广汽传祺、吉利、东风风行、荣威位居自主品牌前列 | 美通社头条...
  17. Clang调试诊断信息Expressive Diagnostics
  18. 七款网工在线画拓扑工具
  19. mysql8多值索引(Multi-Valued Indexes)使用方法和性能测试
  20. 吕蒙正千年奇文《寒窑赋》鉴赏

热门文章

  1. 深入理解地址翻译 CSAPP
  2. 2023跨专业考研计算机,2023考研跨专业如何备考
  3. 字节辟谣被裁员工与 HR 互殴;苹果头显多个新功能曝光;谷歌希望 RISC-V 成为 T1 级 Android 架构|极客头条...
  4. QPixmap保存图片
  5. 华为云数据库推出表数据快速恢复,细粒度解决用户误删数据问题
  6. 如何去写一手好SQL ?
  7. kubectl logs和docker logs输出日志不同的问题
  8. 如何重写equals方法
  9. Silverlight 教程第五部分:用 ListBox 和 DataBinding 显示列表数据 (木野狐译)
  10. 【KALI使用】12搜索引擎Google、YANDEX、Maltego