2015年7月4日 星期六

程式壓縮技巧 2 ─ 彙整副程式

http://4rdp.blogspot.com/2015/07/2.html

這個技巧可以壓縮較多程式碼,簡單的說就是把重複的程式碼彙整出副程式,請見下例:


修改前,程式使用 522 bytes

char num = 2;
char a = 'D';

void setup()
{    
    if (num == 0) {
        a = 'A';
        num += 1;        
    } else if (num == 1) {
        a = 'B';
        num += 1;
    } else if (num == 2) {
        a = 'C';
        num += 1;
    }
}

void loop()
{
}

=============================================
修改後,程式使用 506 bytes

char num = 2;
char a = 'D';
void sub()
{
    a = 'A' + num;
    num += 1;
}
void setup()
{    
    if (num < 3)
        sub();
}
void loop() { }



沒有留言:

張貼留言