Chinaunix首页 | 论坛 | 博客
  • 博客访问: 499967
  • 博文数量: 121
  • 博客积分: 4001
  • 博客等级: 上校
  • 技术积分: 1390
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-13 21:48
文章分类

全部博文(121)

文章存档

2011年(4)

2010年(11)

2009年(106)

我的朋友

分类: 嵌入式

2009-09-22 14:18:47

1 所有牵涉到精确计时的子程序中,用汇编语言会有更快的反应速度。

2 所有的8051 C语言编译程序都会建议用户小心使用汇编语言,以免造成死机。

3 C语言编译时可以指定对执行速度或是程序代码进行优化,我们必须加以了解及使用。

4 对于重启之后的C激活程序STARTUP,请务必进行所有动作的确认。

5 如果发觉某些子程序的执行速度不够快时,先试着用C进行改写,再不行就要用汇编语言。

6 大部分C语言的优化仅仅是针对该语言而已,并未针对8051的程序代码优化。若改用汇编语言后仍不够快时,建议这部分直接用硬件来处理,这才是治标兼治本之道。

7 C语言处理中断的处理速度并不逊于汇编语言,但是使用前须了解其进入及返回原程序的步骤,以免造成以外的死机。

8 随时观察系统的输出文件MAP文件(keil里 .MA),以确认各个变量的存放位置,是否真的放进SRAM区内部。

9 C语言所写的控制系统比汇编语言而言,有更多不确定性存在,这些不确定包含了我们程序写法的执行程序,以及编译程序的隐藏性bug,所以要有一套更严谨的程序验证步骤,对程序代码进行全盘检查。

10 C语言有程序空间过大及执行速度缓慢等的缺点存在。汇编语言的执行及反应速度约在数十个微妙以内,而C的控制程序就要多花点时间来由堆栈存取各个参数值,而其的执行速度约在数个毫秒左右。

11 程序空间或数据空间不够时,C不会提出报警

阅读(1547) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~