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

正文內(nèi)容

【大學(xué)課件】80c51單片機匯編語言程序設(shè)計ppt-文庫吧在線文庫

2025-09-03 16:21上一頁面

下一頁面
  

【正文】 A, 0FFH; (0FFH為 1補碼 ) SAV: MOV DPTR, BUF; 數(shù)據(jù) Y的地址送數(shù)據(jù)指針 DPTR MOVX DPTR, A; 保存 Y值 END 2. 多分支程序結(jié)構(gòu) 多分支程序結(jié)構(gòu)流程中具有兩個以上條件可供選擇。若 Ta≠T54, 則轉(zhuǎn)向 LOOP2 AJMP FH 。若第 2個數(shù)大,則轉(zhuǎn)向 BIG1 XCH A, R2 。 解 :( 1)分析任務(wù):比較兩個數(shù)的大小 ( 2)算法:算術(shù)運算、控制轉(zhuǎn)移 ( 3)程序結(jié)構(gòu):單分支 ( 4)數(shù)據(jù)類型:單字節(jié)、二進(jìn)制、無符號數(shù) ( 5)數(shù)據(jù)結(jié)構(gòu):單元地址升序排列 ( 6) RAM單元安排 :外部 RAM單元 ( 7)采用寄存器間接尋址方式( R0、 R1或 DPTR) ( 8) 程序設(shè)計流程框圖 ; ( 9) 程序清單 ; 開始設(shè)置數(shù)據(jù)指針取數(shù)據(jù)N 2取數(shù)據(jù)N 1 并暫存結(jié)束N 1 保存于A 中N 2 ≥N 1修改數(shù)據(jù)指針保存大數(shù)N 2 保存于A 中YNSTART: CLR C 。存放進(jìn)位的單元地址 MOV R0, A 分支結(jié)構(gòu)也稱為選擇結(jié)構(gòu)。加數(shù)的低字節(jié)地址 MOV A, R0 ADD A, R1 。根據(jù)任務(wù)要求,對不同的計算方法進(jìn)行比較,選擇最適宜的算法。 5. 分界符(分隔符) 用于把語句中的各部分隔開,以便于區(qū)分。 ? 標(biāo)號后面必須跟以冒號“:”。 單片機使用的高級語言 ? 對于 8051單片機,現(xiàn)有 4種語言支持,即匯編、PL/M、 C和 BASIC。 缺點:識別難、記憶難。比機器語言直觀、 易懂、易記。移植性好。 錯誤的標(biāo)號 正確的標(biāo)號 1BT : BT1 BEGIN BEGIN : TA+TB: TATB: ADD: ADD1: 2. 操作碼 用于規(guī)定語句執(zhí)行的操作內(nèi)容,用指令助記符表示。 順序程序結(jié)構(gòu) 順序結(jié)構(gòu)程序是最簡單的程序結(jié)構(gòu)。 用 指令 的形式將程序流程圖實現(xiàn)出來。中間字節(jié)帶進(jìn)位相加 MOV R0, A 。 1. 單分支程序結(jié)構(gòu) 單分支程序結(jié)構(gòu)即二中選一,是通過條件判斷實現(xiàn) 的。取第 1個數(shù) MOV R2, A 。為此可使用比較轉(zhuǎn)移指令 CJNE實現(xiàn)。若 T55≥Ta≥T54, 則返回主程序 例:假定采集的溫度值 Ta放在累加器 A中。分支序號送 A MOV DPTR, BRTAB 。轉(zhuǎn)分支程序 1 AJMP BR127 ?;謴?fù) A值 MOVC A, A+DPTR 。 循環(huán)程序一般由 四 個主要部分組成 : ( 1) 初始化部分: 為循環(huán)程序做準(zhǔn)備 , 如規(guī)定循環(huán)次數(shù) 、給各變量和地址指針預(yù)置初值 。為找到結(jié)束標(biāo)志,應(yīng)采用逐個字符依次與回車 符 (ASCII碼 0DH)比較的方法。 定時程序是典型的循環(huán)程序,它是通過 執(zhí)行一個具有固定延遲時間的循環(huán)體 來實現(xiàn)定時的。 MOV R0, 05H; 5S定時 LOOP: LCALL DELAY; DJNZ R0, LOOP1; ┋ MOV R0, 0AH; 10S定時 LOOP2: LCALL DELAY; DJNZ R0, LOOP2; ┋ MOV R0, 14H; 20S定時 LOOP3: LCALL DELAY; DJNZ R0, LOOP3; ┋ 例:在單片機應(yīng)用系統(tǒng)中,假設(shè)需要的定時時間分別為 5S、10S、 20S,可設(shè)計一個 1S延時子程序 DELAY,則 5S、 10S、20S的定時時間可通過調(diào)用 DELAY實現(xiàn)。 編寫查表程序時,首先把查表數(shù)據(jù)的序號送入 A中,再把從查表指令的下一條指令的首地址到表的首地址間的偏移量與 A值相加,然后再使用該指令進(jìn)行查表操作,并把結(jié)果送入 A中。通常把這種 查表翻譯指令 的方法稱為手工匯編??梢?,“ 機器編輯 → 交叉匯編 → 串行傳送 ”的過程構(gòu)成了單片機軟件設(shè)計的 “三步曲”,全過程如圖所示。 命令格式 : [〈 標(biāo)號: 〉 ] ORG 〈 地址 〉 在匯編語言程序的開始,通常都用一條 ORG偽指令來規(guī)定程序的起始地址,如果不用 ORG規(guī)定,則匯編得到的目標(biāo)程序?qū)?000H開始。其值為 8位或 16位二進(jìn)制數(shù)。 b)使用 0RG命令專門規(guī)定。按順序存入 01H、 00H、 01H、 0ACH、 0FCH、 0DCH DB和 DW定義的數(shù)表,數(shù)的個數(shù)不得超過 80個。命令格式為: <字符名稱> BIT<位地址> 其中:<位地址>可以是絕對地址,也可以是符號地址(即位符號名稱)。執(zhí)行完這條指令后,程序返回主程序斷點處繼續(xù)執(zhí)行。 子程序的字節(jié)數(shù) :子程序中所有指令字節(jié)數(shù)的總和。通常保護(hù)和恢復(fù)現(xiàn)場是在子程序中 利用堆棧 操作實現(xiàn)的,在子程序的開始部分把子程序中要用到的編程資源都保護(hù)起來,在執(zhí)行返回指令之前恢復(fù)現(xiàn)場,這是一種比較規(guī)范的方法。 c) 堆棧設(shè)置太小 , 堆棧操作增長太大 , 使棧區(qū)與其它內(nèi)存單元重合 。 參數(shù)傳遞一般有以下幾種方法: 1) 寄存器傳遞參數(shù) 通過 寄存器 A傳遞入口參數(shù)和出口參數(shù) 。 e)注意保護(hù)現(xiàn)場和恢復(fù)現(xiàn)場。 子程序入口參數(shù) :主程序需要向子程序提供的參數(shù)。這樣不但減少了編程工作量,而且也縮短了程序的長度。源程序匯編 時,對預(yù)留單元不賦值。 例如, DW“AA” 。 命令格式: [〈 標(biāo)號: 〉 ]DB〈 8位數(shù)表 〉 例如: DB “how are you?” DB 2,4,6,10,11,17 例:存放 7段數(shù)碼管(共陽極)顯示的十六進(jìn)制基數(shù)( 0~ F)的十六進(jìn)制數(shù)的字形代碼,可使用多條 DB命令定義。如果END命令出現(xiàn)在程序中間,則在 END之后的指令,匯編程序?qū)⒉挥杼幚怼? ? 偽指令沒有與之相對應(yīng)的二進(jìn)制機器代碼, ? 不同匯編語言的偽指令也有所不同。 機器匯編: 由計算機完成從匯編語言源程序到機器語言目標(biāo)程序的“翻譯”工作。 匯編語言源程序: 用匯編語言編寫的程序稱為匯編語言源程序。注意: A的內(nèi)容均為 8位無符號數(shù)。 假定要求定時時間為 24us。假設(shè)在內(nèi)部 RAM區(qū),開辟 96個工作單元,工作單元首地址為 20H,則工作單元清零 程序子程序如下 : 思考題:如采用 CJNE指令,應(yīng)如何修改程序? 解: ORG 1000H CLR0: MOV R0, 20H;循環(huán)初始化部分 MOV R7, 96; CLR A LOOP: MOV R0, A; 循環(huán)體部分 INC R0; 修改變量 DJNZ R7, LOOP;循環(huán)控制部分 RET END DEC R7CJNE R7,00H,LOOP。 MOV R2, 0FFH。分支程序入口地址表 DW BR1 DW BR127 例:假設(shè)鍵盤上有 4個按鍵,功能說明如下表: 分析任務(wù) 確定算法 程序流程框圖 鍵功能 鍵值(分支程序序號) 鍵處理程序(分支程序) 刪除 00H ER 讀數(shù)據(jù) 01H DS 寫數(shù)據(jù) 02H XS 插入 03H CR JMP A+DPTRE R 分支程序 C R 分支程序X S 分支程序D S 分支程序序號= 0 0 HD P T R ←表首地址A ←分支序號2序號= 0 3 H序號= 0 2 H序號= 0 1 H 假設(shè)轉(zhuǎn)移指令表名稱為 BRTAB,分支程序序號已在 A 中。分支轉(zhuǎn)移值乘以 2 MOV R1, A 。地址表 DB BR1BRTAB DB BRnBRTAB BR0: … 分支程序 BR1: … BRn: … ( 2)通過轉(zhuǎn)移指令表實現(xiàn)程序多分支 MOV A, n RL A 。設(shè) X, Y分別存放在外部RAM 1000H和 2022H單元中。若 (CY)= 0,表明 T
點擊復(fù)制文檔內(nèi)容
語文相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1