在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,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首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)匯編程序編碼規(guī)范

            單片機(jī)匯編程序編碼規(guī)范

            作者: 時(shí)間:2013-02-26 來源:網(wǎng)絡(luò) 收藏

            軟件設(shè)計(jì)更多地是一種工程,而不是一種個(gè)人藝術(shù)。如果不統(tǒng)一編程規(guī)范,最終寫出的程序,其可讀性將較差,這不僅給代碼的理解帶來障礙,增加維護(hù)階段的工作量,同時(shí)不規(guī)范的代碼隱含錯(cuò)誤的可能性也比較大。

            分析表明,編碼階段產(chǎn)生的錯(cuò)誤當(dāng)中,語法錯(cuò)誤大概占20%左右,而由于未嚴(yán)格檢查軟件邏輯導(dǎo)致的錯(cuò)誤、函數(shù)(模塊)之間接口錯(cuò)誤及由于代碼可理解度低導(dǎo)致優(yōu)化維護(hù)階段對(duì)代碼的錯(cuò)誤修改引起的錯(cuò)誤則占了一半以上。

            可見,提高軟件質(zhì)量必須降低編碼階段的錯(cuò)誤率。如何有效降低編碼階段的錯(cuò)誤呢?這需要制定詳細(xì)的軟件編程規(guī)范,并培訓(xùn)每一位程序員,最終的結(jié)果可以把編碼階段的錯(cuò)誤降至10%左右,同時(shí)也降低了程序的測(cè)試費(fèi)用,效果相當(dāng)顯著。

            本文從代碼的可維護(hù)性(可讀性、可理解性、可修改性)、代碼邏輯與效率、函數(shù)(模塊)接口、可測(cè)試性四個(gè)方面闡述了軟件編程規(guī)范,規(guī)范分成規(guī)則和建議兩種,其中規(guī)則部分為強(qiáng)制執(zhí)行項(xiàng)目,而建議部分則不作強(qiáng)制,可根據(jù)習(xí)慣取舍。

            1.排版

            規(guī)則1

            程序塊使用縮進(jìn)方式,函數(shù)和標(biāo)號(hào)使用空格縮進(jìn),程序段混合使用TAB和空格縮進(jìn)??s進(jìn)的目的是使程序結(jié)構(gòu)清晰,便于閱讀和理解。

            默認(rèn)寬度應(yīng)為8個(gè)空格,由于Word中為4個(gè)空格,為示范清晰,此處用2個(gè)代替(下同)。

            例如:

            MOV R1, #00H

            MOV R2, #00H

            MOV PMR, #PMRNORMAL

            MOV DPS, #FLAGDPTR

            MOV DPTR, #ADDREEPROM

            read1kloop:

            read1kpage:

            INC R1

            MOVX A, @DPTR

            MOV SBUF, A

            JNB TI, $

            CLR TI

            INC DPTR

            CJNE R1, #20H, read1kpage

            INC R2

            MOV R1, #00H

            CPL WDI

            CJNE R2, #20H, read1kloop ;END OF EEPROM

            規(guī)則2

            在指令的操作數(shù)之間的,使用空格進(jìn)行間隔,采用這種松散方式編寫代碼的目的是使代碼更加清晰。

            例如:

            CJNE R2, #20H, read1kloop ;END OF EEPROM

            規(guī)則3

            一行最多寫一條語句。

            規(guī)則4

            變量定義時(shí),保持對(duì)齊。便于閱讀和檢查內(nèi)存的使用情況。

            例如:

            RegLEDLOSS EQU 30H ; VARIABLE ;

            TESTLED==RegLEDLOSS.0

            RegLEDRA EQU 31H ; VARIABLE

            RUNLED_Flag EQU 32H ; VARIABLE ;

            256ms改變一次RUNLED狀態(tài)

            RUNLED_Def EQU 10H ; STATIC ;

            16*32ms=500ms改變一次LED狀態(tài)

            2.注釋

            注釋的原則是有助于對(duì)程序的閱讀理解,注釋不宜太多也不能太少,太少不利于代碼理解,太多則會(huì)對(duì)閱讀產(chǎn)生干擾,因此只在必要的地方才加注釋,而且注釋要準(zhǔn)確、易懂、盡可能簡(jiǎn)潔。注釋量一般控制在30%到50%之間。

            規(guī)則1

            程序在必要的地方必須有注釋,注釋要準(zhǔn)確、易懂、簡(jiǎn)潔。

            例如如下注釋意義不大:

            MOV DXCE1COUNTER, #00H ; 將DXCE1COUNTER賦值為0

            而如下的注釋則給出了額外有用的信息:

            JNZ PcComm_Err ; 假如校驗(yàn)出錯(cuò)

            規(guī)則2

            注釋應(yīng)與其描述的代碼相近,對(duì)代碼的注釋應(yīng)放在其上方或右方(對(duì)單條語句的注釋)相鄰位置,不可放在下面,如放于上方則需與其上面的代碼用空行隔開。


            上一頁(yè) 1 2 3 下一頁(yè)

            評(píng)論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉