在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

匯編實現循環判斷與延時

汽車電子技術 ? 來源:滑小稽筆記 ? 作者:滑小稽 ? 2023-03-02 10:03 ? 次閱讀

7.1 循環結構的實現

循環語句可以使用以下架構實現C語言中的for語句。設存在一個代碼段OBA0

OBA0:

;輸入循環的代碼

JMP OBA0

只不過這種方式是無限次循環,若想要有限次循環,則應該這么寫。

START:

MOV CX,n ;n代表循環的次數

JMP OBA0

OBA0:

;輸入循環的代碼

SEC CX

JNZ START

JMP OBA0

對于while語句的實現則可以使用LOOP,設存在一個代碼段OBA0。

OBA0:

MOV CX,n ;n代表循環的時間,即一個時鐘周期

LOOP $

上述的結構可以作為簡單的延時函數使用。

7.2 判斷結構的實現

常用的結構是利用按位與異或運算實現的,因為異或指令相同出0,相反出1的特性,所以可以寫成以下結構,設存在一個代碼段OBA0。

OBA0:

MOV AL,n ;n代表要參加比較的數

NOR n,x ;x代表比較的數

JNZ OBA1 ;相同跳轉到OBA1

JMP OBA0

OBA1:

;相當于if成立執行的指令

還有一種是利用減法,判斷全零標志位,思想與上面的例子一樣,區別就是將上面例子中的NOR改成減法指令SUB就可以了。

7.3 延時函數的實現

設存在一個代碼段OBA0。

OBA0:

MOV CX,n ;n代表循環的時間,即一個時鐘周期

LOOP $

注意:由于CX是一個16位寄存器,最大支持的數是65535,如果需要更長的時間,可以多寫幾遍,或者是采用以下結構的循環嵌套。

設存在一個代碼段OBA0。

START:MOV AX,n ;n代表循環n次LOOP延時

JMP OBA0

OBA0:

MOV CX,n ;n代表循環時間,即一個時鐘周期

LOOP $

DEC AX

JNZ START

JMP OBA0

這種結構最多支持計數2^32個脈沖。

注:為什么要使用延時函數?

在之前計算機的C語言編程中,由于不考慮通信協議以及視覺效果,所以沒有提到延時函數,所謂的延時函數通俗的說法就是讓CPU進行沒有意義的運算,一般低端的處理器采用的是讓CPU不停地做循環來達到延時的效果,后續的Cortex-M系列處理器由于增加了滴答時鐘,所以也可以采用定時器的方式達到延時的效果,因為處理器的速度都是MHz甚至GHz程度,但是通信協議有的最高速度也就幾百KHz,這就需要處理器來遷就通信協議的,因為有的芯片如果速度太快是根本無法工作的,所以加入適當的延時來適應這種低速芯片。現在的計算機中引入Cache緩存,目的也是為了匹配低速設備與高速CPU的通信。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7626

    瀏覽量

    139612
  • for
    for
    +關注

    關注

    0

    文章

    44

    瀏覽量

    16003
  • 循環語句
    +關注

    關注

    0

    文章

    10

    瀏覽量

    4957
收藏 人收藏

    評論

    相關推薦

    【原創分享】單片機延時的兩種實現方法

    單片機延時大家程序中都會用到,那么怎么實現呢?通常我們有軟件實現,就是語句循環;或者硬件實現,通過定時器/計數器。對于精準而言,從
    發表于 10-08 15:32

    通過循環次數的累加實現延時

    通過循環次數的累加實現延時是一種十分實用的延時技巧,在處理一些對時間精度沒要求,又要不間斷切換狀態的任務時,就可以使用這種方法實現
    發表于 01-18 09:32

    怎樣使用arm匯編指令實現for循環結構呢

    1,使用arm匯編指令 實現for循環結構2, while呢?3, do...while呢?4. switch 呢?麻煩高手指教下哈。最好給出具體的匯編指令!
    發表于 10-18 11:24

    快速反復循環延時繼電器電路圖

    快速反復循環延時繼電器電路圖
    發表于 07-03 14:27 ?6455次閱讀
    快速反復<b class='flag-5'>循環</b>的<b class='flag-5'>延時</b>繼電器電路圖

    51單片機匯編語言教程_單片機延時程序分析

    51單片機匯編語言教程:5課單片機延時程序分析
    發表于 01-19 15:26 ?0次下載

    匯編編寫采用定時器延時控制速度的Protuse仿真步進電機

    采用匯編語言編寫的,通過定時器去實現延時的,步進電機Protuse 仿真的步進電機。 分享參考學習。
    發表于 12-04 13:37 ?2次下載

    關于單片機匯編延時程序的一些了解

    如果用高級語言編程,只需要簡單地調用延時函數就可以實現,但是計算機具體是怎么實現的呢?要想知其所以然,還得從匯編開始學起。
    發表于 08-04 09:19 ?2965次閱讀

    51單片機的匯編延時程序免費下載

    本文檔的主要內容詳細介紹的是51單片機的匯編延時程序免費下載。用6MHz晶振,51單片機,一個機器周期為2us。延時10s子程序如下
    發表于 08-05 17:34 ?4次下載
    51單片機的<b class='flag-5'>匯編</b><b class='flag-5'>延時</b>程序免費下載

    單片機實現延時的方法

    實現延時通常有兩種方法:一種是硬件延時,要用到定時器/計數器,這種方法可以提高CPU的工作效率,也能做到精確延時;另一種是軟件延時,這種方法
    的頭像 發表于 09-22 11:46 ?7756次閱讀

    51匯編模擬延時交通燈PCB及仿真文件

    51匯編模擬延時交通燈PCB及仿真文件
    發表于 06-25 09:19 ?13次下載

    STM32延時函數的方法

    STM32延時函數的方法 1.普通延時法 這個比較簡單,讓單片機做一些無關緊要的工作來打發時間,經常用循環實現,不過要做的比較精準還是要下一番功夫。 2.SysTick 定時器
    的頭像 發表于 10-02 16:13 ?9731次閱讀

    單片機延時是怎么實現

    單片機延時大家程序中都會用到,那么怎么實現呢?通常我們有軟件實現,就是語句循環;或者硬件實現,通過定時器/計數器。 對于精準而言,從
    的頭像 發表于 10-12 17:18 ?9964次閱讀

    51匯編(五):延時函數

    ,這時我們就需要通過循環執行NOP,控制循環次數實現延時,并包裝成函數,便于隨時調用。;執行2×20×100次NOPDELAY:MOV R7, #2DELAYLOOP1:MOV R
    發表于 11-20 17:21 ?7次下載
    51<b class='flag-5'>匯編</b>(五):<b class='flag-5'>延時</b>函數

    EFR32上實現精確的軟件延時

    > 0; n--) for(i = 0; i < loops; i++) ;}這意味著:最內層的for語句,執行一次循環需要12個CPU時鐘周期。反匯編如下圖:在編譯器的優化選項設置為“-O2”時,上面的代碼里的循環
    發表于 11-24 19:06 ?3次下載
    EFR32上<b class='flag-5'>實現</b>精確的軟件<b class='flag-5'>延時</b>

    STM32關延時功能實現方式研究

    STM32常見延時實現方式研究一、阻塞延時函數1. 循環延時(V1.0.0)代碼(while形式)測試數據特點總結2. SYSTICK非中斷
    發表于 11-24 19:21 ?4次下載
    STM32關<b class='flag-5'>延時</b>功能<b class='flag-5'>實現</b>方式研究
    主站蜘蛛池模板: 韩漫免费网站无遮挡羞羞漫画 | 色黄网 | 欧美 ed2k | 天天操天天操天天干 | 国产在线视频不卡 | 日韩美女奶水喂男人在线观看 | 福利一区二区在线观看 | 亚洲黄视频 | 亚洲欧洲色 | 真人午夜a一级毛片 | 男女交性视频免费视频 | 网站在线播放 | 男人你懂的在线观看视频 | 亚洲精品成人网 | 婷婷性| 激情综合网五月婷婷 | 超h 高h 污肉男男 | 天天操夜夜欢 | www.a级片| 日本视频一区二区三区 | 欧美色婷婷| 久久观看午夜精品 | 好爽好紧好大的免费视频国产 | 免费视频黄| 韩国床戏合集三小时hd中字 | 四虎永久免费最新在线 | 男人天堂伊人 | 国产精品久久久久久久免费 | 天天操人人爱 | 日韩第五页 | 国产色片 | 天天撸视频 | 免费成人黄色 | 电影一区二区三区 | 色噜噜狠狠成人网 | 日本视频免费高清一本18 | 美女拍拍拍爽爽爽爽爽爽 | 亚洲综合久久综合激情久久 | 最好免费高清视频观看韩国 | 在线亚洲日产一区二区 | 五月天色婷婷丁香 |