1. c语言和汇编语言在开发单片机时各有哪些优缺点? 答:汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的cpu,其汇编语言可能有所差异,所以不易移植。 c语言是一种结构化的高级语言。其优点是可读性好,移植容易,是普遍使用的一种计算机语言。缺点是占用资源较多,执行效率没有汇编高。 对于目前普遍使用的risc架构的8bit mcu来说,其内部rom、ram、stack等资源都有限,如果使用c语言编写,一条c语言指令编译后,会变成很多条机器码,很容易出现rom空间不够、堆栈溢出等问题。而且一些单片机厂家也不一定能提供c编译器。而汇编语言,一条指令就对应一个机器码,每一步执行什幺动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。所以在单片机开发中,我们还是建议采用汇编语言比较好。 如果对单片机c语言有兴趣,holtek-p.htm" target="_blank" title="holtek货源和pdf资料">holtek的单片机就有提供c编译器,可以到holtek-p.htm" target="_blank" title="holtek货源和pdf资料">holtek的网站(.cn )免费下载使用。 2. c或汇编语言可以用于单片机,c++能吗? 答:在单片机开发中,主要是汇编和c,没有用c++的。 3. 搞单片机开发,一定要会c吗? 答:汇编语言是一种用文字助记符来表示机器指令的符号语言,是最接近机器码的一种语言。其主要优点是占用资源少、程序执行效率高。但是不同的cpu,其汇编语言可能有所差异,所以不易移植。 对于目前普遍使用的risc架构的8bit mcu来说,其内部rom、ram、stack等资源都有限,如果使用c语言编写,一条c语言指令编译后,会变成很多条机器码,很容易出现rom空间不够、堆栈溢出等问题。而且一些单片机厂家也不一定能提供c编译器。而汇编语言,一条指令就对应一个机器码,每一步执行什么动作都很清楚,并且程序大小和堆栈调用情况都容易控制,调试起来也比较方便。所以在资源较少单片机开发中,我们还是建议采用汇编语言比较好。 而c语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语言的功能。c语言有功能丰富的库函数、运算速度快、编译效率高、有良好的可移植性,而且可以直接实现对系统硬件的控制。c语言是一种结构化程序设计语言,它支持当前程序设计中广泛采用的由顶向下结构化程序设计技术。此外,c语言程序具有完善的模块程序结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。因此,使用c语言进行程序设计已成为软件开发的一个主流。用c语言来编写目标系统软件,会大大缩短开发周期,且明显地增加软件的可读性,便于改进和扩充,从而研制出规模更大、性能更完备的系统。 综上所述,用c语言进行单片机程序设计是单片机开发与应用的必然趋势。所以作为一个技术全面并涉足较大规模的软件系统开发的单片机开发人员最好能够掌握基本的c语言编程。 4. 当开发一个较复杂而又开发时间短的项目时,用c还是用汇编开发好? 答:对于复杂而开发时间紧的项目时,可以采用c语言,但前提是要求对该mcu系统的c语言和c编译器非常熟悉,特别要注意该c编译系统所能支持的数据类型和算法。虽然c语言是最普遍的一种高级语言,但不同的mcu厂家其c语言编译系统是有所差别的,特别是在一些特殊功能模块的操作上。如果对这些特性不了解,那调试起来就有的烦了,到头来可能还不如用汇编来的快。 5. 在教学中要用到8088和196芯片单片机教材,请问那里可以找到关于这方面的书或资料? 答:有关这方面的教材,大学里常用的一本是《ibm-pc汇编语言程序设计》清华大学出版社出版的,在网上以及书店都是可以找到的,另外网上还可以搜索到很多其他的教材如:《微机原理及汇编语言教程》(杨延双 张晓冬 等编著 )和《16/32 位微机原理、汇编语言及接口技术》(作者: 钟晓捷 陈涛 ,机械工业出版社 出版)等,可以在较大型的科技书店里查找或者直接从网上订购。 6. 初学者到底是应该先学c还是汇编?

转载于:https://www.cnblogs.com/lifan3a/articles/6433596.html

c语言编写单片机技巧相关推荐

  1. 单片机c语言 课程设计报告,C语言编写单片机万年历系统课程设计报告98分

    <C语言编写单片机万年历系统课程设计报告98分>由会员分享,可在线阅读,更多相关<C语言编写单片机万年历系统课程设计报告98分(30页珍藏版)>请在人人文库网上搜索. 1.多功 ...

  2. c语言流水灯程序详细讲解,用c语言编写单片机流水灯程序详解

    用C语言编写的单片机流水灯程序 一.硬件电路 因为电路用单片机控制,所以电路非常简洁.其电路原理图见下图,印制板图如下图所示. ? 电路的核心部分是AT89C2051单片机,前面提到它有Pl和P3两组 ...

  3. 单片机c语言程序编写步骤,用c语言编写单片机流水灯程序详解

    用C语言编写的流水灯程序 一.硬件电路 因为电路用单片机控制,所以电路非常简洁.其电路原理图见下图,印制板图如下图所示. 电路的核心部分是AT89C2051单片机,前面提到它有Pl和P3两组I/O口, ...

  4. c语言万历年系统设计报告,C语言编写单片机万历系统课程设计报告分.doc

    多功能电脑时钟设计报告 一.实训目的意义及任务要求 1.1目的意义 单片机的使用领域已十分广泛,如智能仪表.实时工控.通讯设备.导航系统.家用电器等.LED数字显示的日历钟显示清晰直观.走时准确.可以 ...

  5. c语言编写单片机跑马灯,用单片机编写几种跑马灯

    任务: 1.在电路板上实现跑马灯,一次1匹 2.在电路板上实现跑马灯,一次2匹 3.在电路板上实现4个二极管的同时闪烁 源程序1: /********************************* ...

  6. c语言使单片机输出低电平,单片机开发中的一些实用技巧

    很多朋友正在学习单片机开发技术,但开发中免不了要碰到这样.那样的问题,有些问题可能无碍大局,但有一些问题却直接影响到产品的成本.体积.性能.这里介绍笔者的几个技巧,希望对大家的工作有帮助. 一.C语言 ...

  7. 软件工程-c语言--基于at89c51单片机c语言编写的计算器,基于AT89C1单片机C语言编写的计算器.doc...

    基于AT89C1单片机C语言编写的计算器 #include #define uint unsigned int #define uchar unsigned char sbit dula=P2^6; ...

  8. 单片机c语言出租车计时程序,基于单片机出租车计价器课题设计c语言编写(样例3)...

    <基于单片机出租车计价器课题设计(c语言编写).doc>由会员分享,可免费在线阅读全文,更多与<基于单片机出租车计价器课题设计(c语言编写)>相关文档资源请在帮帮文库(www. ...

  9. c语言编写闹钟主程序流程图,基于STC15W4K58S4单片机的电子万年历设计源码与报告(数码管显示)...

    基于STC15W4K58S4单片机的电子万年历(数码管显示)该压缩包包含源码TXT文件 源工程文件(Keil uVision4文件)和课程设计报告 电子时钟的设计 -单片机综合设计报告 目录 1  任 ...

最新文章

  1. 毕业2年从月薪400到6000 继续网络梦
  2. TypeScript超越C++成第四大语言,GitHub这份年度报告有太多“意想不到”
  3. 00075_BigInteger
  4. string转换bigdecimal_使用MapStruct处理恼人的bean转换
  5. 容器网络|深入理解Cilium
  6. ai/ml_您本周应阅读的有趣的AI / ML文章(8月15日)
  7. Elementary OS安装Chrome
  8. weblogic工具_WebLogic Classloader分析工具
  9. jvm内存模型_JVM内存模型的相关概念
  10. 2021儋州市民族中学高考成绩查询,海南2021高考成绩排名查询,海南高考个人成绩排名如何查询...
  11. 无限递归替换文件内的某个字符串
  12. js三级分类菜单导航
  13. [python机器学习及实践(2)]Sklearn实现朴素贝叶斯
  14. C#也能PS图片,还能为网站Ajax上传图片同时生成微缩图(附Demo)
  15. Bailian4138 POJ NOI MATH-7827 质数的和与积【数论】
  16. Django-----模板嵌套
  17. nProtect的一些知识
  18. MAHLE PIS 3097/2.2 bar
  19. 入职地府后我成了人生赢家_129、新鬼入职|入职地府后我成了人生赢家|入职地府后我成了人生赢家章节阅读-龙族小说网...
  20. EVP_DecryptFinal_ex:bad decrypt

热门文章

  1. 钉钉机器人关键词应答_除了用于电销,智能语音机器人可以应用哪些地方?
  2. echarts地图的基本使用配置
  3. 关于CaciiEZ端口流量阀值报警的设置
  4. ArcEngine临时数据存储 创建内存工作空间
  5. inline,block,inline-block的区别
  6. Serena Dimensions 介绍
  7. 《那些年啊,那些事——一个程序员的奋斗史》——79
  8. linux 粘贴网站地址,linux 复制粘贴
  9. WebSocket 实现前后端通信的笔记
  10. 查看Chome浏览器中已保存的密码