freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

單片機(jī)原理與應(yīng)用電子教案4(編輯修改稿)

2025-01-19 00:00 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 CHA: INC R0 INC R1。 DJNZ R6, LOOP1 。 內(nèi)循環(huán)未完 , JNB F0, EXIT 。 若從未交換 , DJNZ R7, LOOP0。 外循環(huán)未完 , EXIT: RET 第 4 章 匯編語言程序設(shè)計(jì)簡(jiǎn)介 圖 第 4 章 匯編語言程序設(shè)計(jì)簡(jiǎn)介 例 9 設(shè)某系統(tǒng)的模數(shù)轉(zhuǎn)換器是 ADC0809, 它的轉(zhuǎn)換結(jié)束信號(hào) EOC連接到 8031 的 , 當(dāng) EOC的狀態(tài)由低變高時(shí) , 則結(jié)束循環(huán)等待 , 并讀取轉(zhuǎn)換值 , 其程序如下 : START: MOV DPTR, # addr 。 0809端口地址送 DPTR MOV A, # 00H 。 啟動(dòng) 0809 MOVX DPTR, A LOOP: JNB , LOOP。 檢測(cè) , 判是否轉(zhuǎn)換結(jié)束 MOVXCA, DPTR。 … 第 4 章 匯編語言程序設(shè)計(jì)簡(jiǎn)介 例 10 在內(nèi)部 RAM中從 50H單元開始的連續(xù)單元依次存放了一串字符 , 該字符串以回車符為結(jié)束標(biāo)志 , 要求測(cè)試該字符串的長(zhǎng)度 。 程序如下 : START: MOV R2, # 0FFH MOV R0, # 4FH 。 數(shù)據(jù)指針 R0 LOOP: INC R0 INC R2 CJNE R0, # 0DH, LOOP RET 第 4 章 匯編語言程序設(shè)計(jì)簡(jiǎn)介 散轉(zhuǎn)程序是分支程序的一種 , 它可根據(jù)運(yùn)算結(jié)果或輸入數(shù)據(jù)將程序轉(zhuǎn)入不同的分支 。 MCS 51 指令系統(tǒng)中有一條跳轉(zhuǎn)指令 JMPA+DPTR, 用它可以很容易地實(shí)現(xiàn)散轉(zhuǎn)功能 。 該指令把累加器的 8 位無符號(hào)數(shù)與 16 位數(shù)據(jù)指針的內(nèi)容相加 , 并把相加的結(jié)果裝入程序計(jì)數(shù)器 PC, 控制程序轉(zhuǎn)向目標(biāo)地址去執(zhí)行 。 此指令的特點(diǎn)在于 , 轉(zhuǎn)移的目標(biāo)地址不是在編程或匯編時(shí)預(yù)先確定的 , 而是在程序運(yùn)行過程中動(dòng)態(tài)地確定的 。目標(biāo)地址是以數(shù)據(jù)指針 DPTR的內(nèi)容為起始的 256 字節(jié)范圍內(nèi)的指定地址 , 即由 DPTR的內(nèi)容決定分支轉(zhuǎn)移程序的首地址 , 由累加器 A的內(nèi)容來動(dòng)態(tài)選擇其中的某一個(gè)分支轉(zhuǎn)移程序 。 第 4 章 匯編語言程序設(shè)計(jì)簡(jiǎn)介 例 11 根據(jù)工作寄存器 R0 內(nèi)容的不同 , 使程序轉(zhuǎn)入相應(yīng)的分支 。 (R0)=0 對(duì)應(yīng)的分支程序標(biāo)號(hào)為 PR0。 (R0)=1 對(duì)應(yīng)的分支程序標(biāo)號(hào)為 PR1。 (R0)=N 對(duì)應(yīng)的分支程序標(biāo)號(hào)為 PRN。 … 第 4 章 匯編語言程序設(shè)計(jì)簡(jiǎn)介 程序如下 : LP0: MOV DPTR, # TAB 。 MOV A, R0 ADD A, R0 。 R0內(nèi)容乘以 2 JNC LP1 。 INC DPH 。 LP1: JMP A+DPTR。 TAB: AJMP PR0 AJMP PR1 AJMP PRN … … 第 4 章 匯編語言程序設(shè)計(jì)簡(jiǎn)介 本例程序僅適用于散轉(zhuǎn)表首地址 TAB和處理程序入口地址 PR0, PR1, … , PRN在同一個(gè) 2 KB范圍的存儲(chǔ)區(qū)內(nèi)的情形 。 若超出 2 KB范圍可在分支程序入口處安排一條長(zhǎng)跳轉(zhuǎn)指令 , 可采用如下程序 : MOV DPTR, # TAB MOV A, R0 MOV B, # 03H 。 長(zhǎng)跳轉(zhuǎn)指令占 3 MUL AB XCH A, B 第 4 章 匯編語言程序設(shè)計(jì)簡(jiǎn)介 ADD A, DPH MOV DPH, A XCH A, B JMP A+DPTR。 TAB: LJMP PR0。 LJMP PR1 LJMP PRN … … 第 4 章 匯編語言程序設(shè)計(jì)簡(jiǎn)介 子程序和參數(shù)傳遞 一 、 子程序的概念 通常把這些基本操作功能編制為程序段作為獨(dú)立的子程序 , 以供不同程序或同一程序反復(fù)調(diào)用 。 在程序中需要執(zhí)行這種操作的地方放置一條調(diào)用指令 , 當(dāng)程序執(zhí)行到調(diào)用指令 , 就轉(zhuǎn)到子程序中完成規(guī)定的操作 , 并返回到原來的程序繼 續(xù)執(zhí)行下去 。 第 4 章 匯編語言程序設(shè)計(jì)簡(jiǎn)介 二 、 調(diào)用子程序的指令有 “ ACALL” 和 “ LCALL” , 執(zhí)行調(diào)用指令時(shí) , 先將程序地址指針 PC改變 ( “ ACALL” 加 2, “ LCALL” 加 3) , 然后 PC值壓入堆棧 , 用新的地址值代替 。執(zhí)行返回指令時(shí) , 再將 PC值彈出 。 子程序調(diào)用中 , 主程序應(yīng)先把有關(guān)的參數(shù)存入約定的位置 , 子程序在執(zhí)行時(shí) , 可以從約定的位置取得參數(shù) , 當(dāng)子程序執(zhí)行完 , 將得到的結(jié)果再存入約定的位置 , 返回主程序后 , 主程序可以從這些約定的位置上取得需要的結(jié)果 , 這就是參數(shù)的傳遞 。 第 4 章 匯編語言程序設(shè)計(jì)簡(jiǎn)介 例 12 把內(nèi)部 RAM某一單元中一個(gè)字節(jié)的十六進(jìn)制數(shù)轉(zhuǎn)換成兩位 ASCII碼 , 結(jié)果存放在內(nèi)部 RAM的連續(xù)兩個(gè)單元中 。 假設(shè)一個(gè)字節(jié)的十六進(jìn)制數(shù)在內(nèi)部 RAM 40H單元 , 而結(jié)果存入 50H, 51H單元 , 可以用堆棧進(jìn)行參數(shù)傳遞 , 程序如下 : MAIN: MOV R1, # 50H 。 R1 MOV A, 40H 。 A SWAP A 。 PUSH ACC 。 LCALL HEASC 。 調(diào)用將低半字節(jié)的內(nèi)容轉(zhuǎn)換 。 成 ASCII碼子程序 HEASC POP ACC MOV R1, A 。 INC R1 PUSH 40H 第 4 章 匯編語言程序設(shè)計(jì)簡(jiǎn)介 LCALL HEASC POP ACC MOV R1, A 。 END HEASC: MOV R0, SP DEC R0 DEC R0 。 R0 XCH A, R0 。 ANL A, # 0FH 。 ADD A, # 2 。 修改 A MOVC A, A+PC 。 XCH A, R0。 RET TAB: DB 30H, 31H, 32H, … 第 4 章 匯編語言程序設(shè)計(jì)簡(jiǎn)介
點(diǎn)擊復(fù)制文檔內(nèi)容
外語相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1