• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 高效的C編程之:條件執行

    高效的C編程之:條件執行

    作者: 時間:2013-09-30 來源:網絡 收藏

    4.3

    指令都是可以的。在代碼中使用指令可以減小代碼密度并提高程序執行效率。典型的條件執行語句用在比較指令之后,形成程序的分支跳轉結構。下面的例子顯示了條件執行指令的典型用法。

    本文引用地址:http://www.czjhyjcfj.com/article/257022.htm

    CMPx,#0

    MOVGEy,#1

    MOVLTy,#0

    但當代碼中連續的條件執行指令超過4條時,就會影響程序的執行速度。所以編譯器在編譯程序時,限制條件指令連續出現的次數。

    編譯器常把C語言中的if…else結構編譯成條件執行指令,但子程序調用一般是不能條件執行的。所以在編程時盡可以地使用簡單的if…else結構完成程序的分支操作,而避免使用過多的子程序調用。

    下面的例子顯示了編譯器如何利用指令的條件執行。

    intg(inta,intb,intc,intd)

    {if(a>0b>0c0d0)/*程序分組條件*/

    returna+b+c+d;

    return-1;

    }

    g

    CMPa1,#0

    CMPGTa2,#0

    BLE|L000024.J4.g|

    CMPa3,#0

    CMPLTa4,#0

    ADDLTa1,a1,a2

    ADDLTa1,a1,a3

    ADDLTa1,a1,a4

    MOVLTpc,lr

    |L000024.J4.g|

    MVNa1,#0

    MOVpc,lr



    關鍵詞: C編程 條件執行 ARM

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 望城县| 巩义市| 大田县| 五台县| 兴城市| 临湘市| 禹城市| 博野县| 康马县| 灵璧县| 当雄县| 景宁| 云霄县| 新兴县| 永昌县| 万全县| 安图县| 金寨县| 揭阳市| 温泉县| 涞水县| 马鞍山市| 随州市| 株洲县| 沿河| 上饶市| 综艺| 石台县| 兖州市| 平邑县| 清徐县| 阿拉善右旗| 全椒县| 洛浦县| 隆尧县| 准格尔旗| 高安市| 清水河县| 富民县| 蓝山县| 岳西县|