在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > MSP430的高質量代碼編寫

            MSP430的高質量代碼編寫

            作者: 時間:2016-11-13 來源:網絡 收藏
            1) 通常在滿足運算需求的前提下,盡量選擇為變量定義字節(jié)少的數據類型。

            比如最常用的int和char,int是16位的,char是8位的,如果沒有必要,不要使用int,而且使用char也最好使用unsigned char。運行時,可以在變量窗口看到,使用類型為unsigned char的變量是16進制的格式,而使用int的是十進制格式,如果char沒有定義為unsigned,會出現(xiàn)負號,如果沒有必要的話,在430中是不需要負數的。

            本文引用地址:http://www.biyoush.com/article/201611/316342.htm

            2) 盡量不用過長的數據類型,如long、long long和double

            3) MSP430的C編譯器不支持位尋址,所以運算中盡量減少位操作,對于只有“是”和“否”的變量,如果RAM容量允許,則可分配為unsigned char類型,可提高運算速度。如果分配為某字節(jié)的某個位,可以減少存儲器的消耗,但是會降低運算速度

            4) 避免使用浮點數,盡量使用定點數進行小數運算。如果必須使用浮點數,則盡量用32位的float,而不是64位的double

            5) 盡量將變量分配為無符號數據類型

            6) 對于指針變量,如果聲明后其值不再改變,則聲明為const類型,這樣編譯器編譯時能更好的優(yōu)化生成的代碼

            7) 盡可能的使用局部變量而非全局變量或者靜態(tài)變量(static)。這樣有利于編譯器編譯時更好的優(yōu)化生成的代碼

            8) 避免對局部變量使用 &取地址符。因為這樣會使編譯器無法把此變量放在CPU的寄存器中,而是放在RAM中,從而失去了優(yōu)化的機會

            9) 僅在模塊內使用的變量聲明為static,有利于優(yōu)化代碼

            10) 如果堆??臻g有限,盡量減少函數調用的層次和遞歸調用

            11) 如果傳送參數過多,可將參數組成一個數組或者結構體,然后用指針傳遞

            12) 某些變量在中斷程序和普通級別程序中都會被用到,所以必須加以保護。

            將變量聲明為volatile類型,編譯器優(yōu)化時就不會移動它,對它的訪問不會被延遲。為保證對volatile的變量不被打斷,為此,可以在訪問它的部分(即訪問它的函數)前面加上__moniter的聲明


            關鍵詞: MSP430代碼編

            評論


            技術專區(qū)

            關閉