色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 高效的C編程之:條件執(zhí)行

          高效的C編程之:條件執(zhí)行

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

          4.3

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

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

          CMPx,#0

          MOVGEy,#1

          MOVLTy,#0

          但當(dāng)代碼中連續(xù)的條件執(zhí)行指令超過4條時(shí),就會(huì)影響程序的執(zhí)行速度。所以編譯器在編譯程序時(shí),限制條件指令連續(xù)出現(xiàn)的次數(shù)。

          編譯器常把C語言中的if…else結(jié)構(gòu)編譯成條件執(zhí)行指令,但子程序調(diào)用一般是不能條件執(zhí)行的。所以在編程時(shí)盡可以地使用簡(jiǎn)單的if…else結(jié)構(gòu)完成程序的分支操作,而避免使用過多的子程序調(diào)用。

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

          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



          關(guān)鍵詞: C編程 條件執(zhí)行 ARM

          評(píng)論


          相關(guān)推薦

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

          關(guān)閉