電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>C語言|源代碼>高效的C編程之條件執(zhí)行

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

2017-10-17 | rar | 0.6 MB | 次下載 | 1積分

資料介紹

4.3 條件執(zhí)行
  ARM指令都是可以條件執(zhí)行的。在代碼中使用條件執(zhí)行指令可以減小代碼密度并提高程序執(zhí)行效率。典型的條件執(zhí)行語句用在比較指令之后,形成程序的分支跳轉(zhuǎn)結(jié)構(gòu)。下面的例子顯示了條件執(zhí)行指令的典型用法。
  CMP x, #0
  MOVGE y, #1
  MOVLT y, #0
  但當(dāng)代碼中連續(xù)的條件執(zhí)行指令超過4條時(shí),就會(huì)影響程序的執(zhí)行速度。所以編譯器在編譯程序時(shí),限制條件指令連續(xù)出現(xiàn)的次數(shù)。
  ARM編譯器常把C語言中的if…else結(jié)構(gòu)編譯成條件執(zhí)行指令,但子程序調(diào)用一般是不能條件執(zhí)行的。所以在編程時(shí)盡可以地使用簡單的if…else結(jié)構(gòu)完成程序的分支操作,而避免使用過多的子程序調(diào)用。
  下面的例子顯示了編譯器如何利用ARM指令的條件執(zhí)行。
  int g(int a, int b, int c, int d)
  { if (a 》 0 && b 》 0 && c 《 0 && d 《 0) /* 程序分組條件 */
  return a + b + c + d;
  return -1;
  }
  g
  CMP a1,#0
  CMPGT a2,#0
  BLE |L000024.J4.g|
  CMP a3,#0
  CMPLT a4,#0
  ADDLT a1,a1,a2
  ADDLT a1,a1,a3
  ADDLT a1,a1,a4
  MOVLT pc,lr
  |L000024.J4.g|
  MVN a1,#0
  MOV pc,lr
?
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1FS4059C帶NTC升壓型三節(jié)鋰電池充電管理IC數(shù)據(jù)手冊
  2. 3.53 MB   |  3次下載  |  免費(fèi)
  3. 216位數(shù)字輸出型環(huán)境光強(qiáng)度傳感器集成電路bh1750FVI中文數(shù)據(jù)手冊
  4. 2.67 MB   |  1次下載  |  免費(fèi)
  5. 3MCx8316x 在掃地機(jī)器人中的應(yīng)用
  6. 1.34MB   |  1次下載  |  免費(fèi)
  7. 4掃地機(jī)器人中的霍爾效應(yīng)傳感器應(yīng)用說明
  8. 666.09KB   |  1次下載  |  免費(fèi)
  9. 5如何調(diào)整模擬前端信號鏈的 S 參數(shù)
  10. 794.19KB   |  1次下載  |  免費(fèi)
  11. 6FS4059B帶NTC升壓型兩節(jié)鋰電池充電管理IC數(shù)據(jù)手冊
  12. 3.24 MB   |  1次下載  |  免費(fèi)
  13. 7基于波形捕獲的超聲波傳感水流量計(jì)量技術(shù)應(yīng)用說明
  14. 1.01MB   |  1次下載  |  免費(fèi)
  15. 8使用邏輯和翻譯優(yōu)化車身控制模塊(BCM)應(yīng)用說明
  16. 344.53KB   |  次下載  |  免費(fèi)

本月

  1. 1HFSS電磁仿真設(shè)計(jì)應(yīng)用詳解PDF電子教程免費(fèi)下載
  2. 24.30 MB   |  129次下載  |  1 積分
  3. 2繼電保護(hù)原理
  4. 2.80 MB   |  40次下載  |  免費(fèi)
  5. 3正激、反激、推挽、全橋、半橋區(qū)別和特點(diǎn)
  6. 0.91 MB   |  34次下載  |  1 積分
  7. 4labview實(shí)現(xiàn)DBC在界面加載配置
  8. 0.57 MB   |  24次下載  |  5 積分
  9. 5在設(shè)計(jì)中使用MOSFET瞬態(tài)熱阻抗曲線
  10. 1.57MB   |  15次下載  |  免費(fèi)
  11. 6GBT 4706.1-2024家用和類似用途電器的安全第1部分:通用要求
  12. 7.43 MB   |  14次下載  |  免費(fèi)
  13. 7AD18學(xué)習(xí)筆記
  14. 14.47 MB   |  8次下載  |  2 積分
  15. 8H橋中的電流感測
  16. 545.39KB   |  7次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935113次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
  4. 1.48MB  |  420061次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233084次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費(fèi)下載
  8. 340992  |  191360次下載  |  10 積分
  9. 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  10. 158M  |  183329次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81578次下載  |  10 積分
  13. 7Keil工具M(jìn)DK-Arm免費(fèi)下載
  14. 0.02 MB  |  73804次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65985次下載  |  10 積分