C语言编程中的心得体会

上传人:Wo****C 文档编号:73928220 上传时间:2022-04-12 格式:DOC 页数:3 大小:12KB
返回 下载 相关 举报
C语言编程中的心得体会_第1页
第1页 / 共3页
C语言编程中的心得体会_第2页
第2页 / 共3页
C语言编程中的心得体会_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述
C语言编程中的心得体会 - 心得体会 - 作者:彭树林在单片机C语言编程中使用恰当的优化手段,可以写出简洁高效的代码。以下是笔者在C51编程过程中的一点心得体会。1.尽量使用短的数据类型。如uchar、bit、uint,有时需要对uchar数据类型进行按位访问,可将其定义在bdam区间。慎重使用float数据类型,有时它可以转化成int数据类型来代用。2.熟练指针的使用。例如Uint是由双字节拼接而成,有时用来存放16位地址。获取其高八位和低八位地址的方法为:只要用uchar *p;p=int0,则*p表示其高八位,*(+p)表示其低八位,非常方便。3.使用自加、自减的方法为:a+;a-,它会调用INC、DEC指令,效率远比a=a+1;a=a-1高。4.循环:使用uchar a;for(a=1;a≤8;a+).时,条件a<=8编译后代码比较繁琐,可用for(a=8;a=a-1).来代替,充分利用单片机的为零跳转指令。同样,在do.while()中也适用。5. 当多个条件判别时,if(ABCD),只要第一个条件A不符合,程序是不管后面的条件的,所以可把最可能出错的条件排在前面处理。6.子程序的参量。调用子程序时若带参量,程序会开辟存储空间(如Rn)来存放参量,这个空间是可以充分利用的。如延时子程序void delay(uehar time)while(time一);J,可以延时相当短的时间。7.空指令NOP在C中用_nop一0实现,定义在中。8.求余运算“”操作是调用子程序来完成的,效率低。如果是求2的n次方的余数,可使用位操作来代替。如:a=a8可改用8=a7,效率明显提高。同样2xN的乘除运算可用移位来实现。如:a=a*2;b=h2可改为a=a1;b=b1。9.使用结构体类型数组时,在查找第n个值时要利用乘法指令(序号乘以类型宽度),当程序高速运行时,可能会影响其速度。10.Keil的软件调试非常有用。笔者常将编译后的程序与C程序对照,查看汇编代码、检查不恰当之处。有时还可用来计算子程序执行时间(在确定精确延时程序参数时非常有用)。 第 3 页 共 3 页
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!