C中的以下简单技巧专门用于程序内存空间优化. 这些对于处理具有有限闪存的低成本 8 位微控制器的嵌入式系统程序员特别有用。虽然在这种情况下汇编语言是最好的选择,但(几乎所有年轻的)硬件工程师现在更喜欢使用 C 语言,即使程序是一个相对较短的控制程序。这 10 个技巧已使用 XC8 编译器(v1.42,免费版)进行了测试,以显示在增强型中档 8 位 XLP PICmicro(PIC16F1824)上应用每个代码片段之前和之后所涉及的程序存储器字节量。这些代码片段除了提供概念证明之外没有什么特别之处。可以在本文末尾列出的参考资料中找到更聪明(和复杂)的技巧。
技巧#1: 尽可能使用简短的数学表达式。
{
int a, b ;
a = (b – 1) * 3 ;
} void main(void)
{
int a, b ;
a = (b – 1) ;
一 = 一 + 一 + 一 ;
}
技巧 #2: 使用多个 if 指令(没有 else)来替换 switch 指令。switch 指令的每个 case(没有默认 case)都被替换为 if 指令(没有 else)。但是,如果 switch 指令以默认情况终止,则此技巧无关紧要。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)