更多
 当前上元教育宁波校 其它分校: 慈溪校 无锡校 常州校 南京校 上海校 绍兴校 南通校   (建议使用IE浏览本网站/分辨率1024*768px)    
宁波培训学校 宁波培训学校
 位置: 上元教育 >> 机电培训 >> 技术资讯 >> 正文
 

单片机采用C语言编程应注意些什么?

作者:by007  更新时间:2011/11/04  点击次数:
 

1 单片机C语言主要特点
    C 编写程序比汇编更符合人们的思考习惯,开发者可以摆脱与硬件无必要的接触,更专心的考虑功能和算法而不是考虑一些细节问题,这样就减少了开发和调试的时间。C语言具有良好的程序结构,适用于模块化程序设计,因此采用C语言设计单片机应用系统程序时,首先要尽可能地采用结构化的程序设计方法,将功能模块化,由不同的模块完成不同的功能[1],这样可使整个应用系统程序结构清晰,易于调试和维护。不同的功能模块,分别指定相应的入口参数和出口参数,对于一些要重复调用的程序一般把其编成函数,这样可以减少程序代码的长度,又便于整个程序的管理,还可增强可读性和移植性。

单片机C语言与标准C语言的区别
 由于现在越来越多的产品都采用单片机开发,所完成的计算和控制工作也日趋复杂,但是单片机系统是一种资源十分有限的系统,这主要表现在程序存储器资源的不足,因此在程序设计时如何使用好这些有限的资源就显得十分重要。用C语言编程虽然具有许多的优点,但是生成的代码相对要长,要是编程技术不好,生成的代码甚至有可能比汇编语言生成的代码长几倍,因此对编程者来说,应该注意到单片机C语言和一般意义上的标准C语言的区别,对程序进行适当的优化。

2.1 数据类型的选用
单片机C语言编程不同于一般的C语言编程的显著的一个特点,就是要和程序存储器资源结合起来,虽然其提供的数据据类型十分丰富,但是只有bitchar等数据类型是是机器语言直接支持的数据类型,用此类数据类型的语句所生成的代码较短;而其它的数据类型如整型、浮点型等数据要有一定的内部程序或内部函数的支持,相对来说用该类数据类型的语句生成的代码要长。有些C语言程序表面上看起来十分的简单,但在在实际编译时,生成的代码却相当长。因此我们要按照实际需要,合理地选用数据,可以大大的减少所生成的代码长度。例如在C51中每种数据类型变量所占用存储器字节数和经编译后生成的代码长度,不同的数据类型所生成的机器代码长度相差很多,相同类型的数据类型有无符号对机器代码长度也有影响。在程序编译时生成机器代码长的数据类型的优先级越高,不同的数据类型在进行程序运算时要转化为高优先级的的数据类型,相应的代码长度也会增长[2]。因此我们应尽可能地使用bit,char等机器语言直接支持的数据类型,无符号数的变量应声明为无符号数,尽可能地减少程序中使用的数据类型的种类。

上一篇: 交换机与路由器的区别 下一篇: 西门子200与300的区别
相关文章
  • 无相关文章
  • 网上报名
    姓名:  性别:
    电话: 
    地址:
    课程:
    最新课程 更多
     ·宁波上元教育:程序员工作是选大公
     ·如何学习前端知识?
     ·宁波上元教育:怎样学习PLC更简单,
     ·初学者是先学三菱PLC还是西门子PLC
     ·宁波上元教育:学PLC的有前途吗
     ·宁波有web前端培训吗,web前端学什
     ·java工程师的职业规划
     ·web前端是什么,干什么用的
     ·宁波上元教育:程序员的七个对己最
     ·JavaScript 标准参考教程之「基本语
    推荐课程 更多
     ·宁波上元教育:程序员工作是选大公
     ·如何学习前端知识?
     ·宁波上元教育:怎样学习PLC更简单,
     ·初学者是先学三菱PLC还是西门子PLC
     ·宁波上元教育:学PLC的有前途吗
     ·宁波有web前端培训吗,web前端学什
     ·java工程师的职业规划
     ·web前端是什么,干什么用的
     ·宁波上元教育:程序员的七个对己最
     ·JavaScript 标准参考教程之「基本语
    热门课程 更多
     ·宁波上元教育:程序员工作是选大公
     ·如何学习前端知识?
     ·宁波上元教育:怎样学习PLC更简单,
     ·初学者是先学三菱PLC还是西门子PLC
     ·宁波上元教育:学PLC的有前途吗
     ·宁波有web前端培训吗,web前端学什
     ·java工程师的职业规划
     ·web前端是什么,干什么用的
     ·宁波上元教育:程序员的七个对己最
     ·JavaScript 标准参考教程之「基本语
    网站首页| 友情链接| 最新开课| 会计培训| 电脑培训| 外语培训| 建筑培训| 信息技术| 才艺培训| 职业资格| 关于我们| 网上报名| 网站地图| 后台管理
    联系地址:宁波市海曙区中山东路137号7楼
    联系电话:0574-87327805、87323725、87324192、87325693、87325823、87326973、87329343、87329353、87042056