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

正文內(nèi)容

06-第四章程序設計(已修改)

2025-01-22 03:15 本頁面
 

【正文】 第四章: MCS51程序設計計算機與通信工程學院李耀明一、匯編語言概述n 指令系統(tǒng)n 語句格式n [標號 ]: 操作碼 [操作數(shù) ]。[注釋 ]n 指令編碼長短:單字節(jié),雙字節(jié),三字節(jié)n 執(zhí)行周期:一個機器周期占 12個振蕩周期,單周期指令,雙周期, 4周期n 尋址方式:n 指令中所規(guī)定的尋找操作地址的方式n 立即、直接、寄存器、寄存器間接尋址、基址加變址、相對尋址、位尋址n 指令分類:n 數(shù)據(jù)傳送、算術(shù)、邏輯、位操作、控制轉(zhuǎn)移n 程序設計的步驟n ( 1)分析問題,編制說明要解決問題的程序框圖。n ( 2)確定數(shù)據(jù)結(jié)構(gòu)、算法、工作單元、變量設定 (與高級語言不同 )n ( 3)根據(jù)所用的指令系統(tǒng),按照已編制的程序框圖用匯編語言編制出源程序。n ( 4)將編制出的程序在計算機上調(diào)試,直至實現(xiàn)預定的功能。計算機與通信工程學院二、程序設計分類n 順序程序:n 執(zhí)行時按順序一條條地執(zhí)行指令n 分支程序:n 當程序不再順序執(zhí)行,而向一個方向或多個方向轉(zhuǎn)移時,叫分支程序。n 循環(huán)程序:n 對于需要反復的程序段,常采用循環(huán)辦法,以縮短程序。n 子程序及其調(diào)用程序n 主程序使用子程序時,用調(diào)用指令( ACALL),子程序最后放一條 RET指令。計算機與通信工程學院三、程序設計準則n 結(jié)構(gòu)清晰:便于分析n 層次分明:便于閱讀n 語言簡潔:便于分析n 易于理解:便于閱讀計算機與通信工程學院 簡單程序設計n 簡單程序又稱順序程序。計算機是按指令在存儲器中存放的先后次序來順序執(zhí)行程序的。除非用特殊指令讓它跳轉(zhuǎn),不然它會在 PC控制下執(zhí)行。計算機與通信工程學院例 41兩個 8位無符號數(shù)相加n ORG 0000Hn AJMP BEGINn ORG 0030Hn BEGIN:n MOV 40H,01Hn MOV 41H,02Hn LOOP:n MOV R0,40Hn MOV A,R0n INC R0n ADD A,R0n INC R0n MOV R0,An JMP LOOPn END開始R0←40HA← ( R0)A送( 42H)( 40H) +( 41H)和送 A返回圖 41 例 1流程圖例:將加數(shù)和被加數(shù)分別送入 40H、 41H單元,加完后和送入 42H單元計算機與通信工程學院例 42將兩個半字節(jié)數(shù)合并成一個單字節(jié)數(shù) n 程序n ORG 0000Hn AJMP startn ORG 0030Hn START:n MOV sp,60Hn MOV 40h,01hn MOV 41h,02hn loop:n MOV R1,40Hn MOV A,R1n ANL A,0FH 。取第一個半字節(jié)n SWAP An INC R1 n XCH A,R1 。取第二字節(jié) n ANL A,0FH 。取第二個半字節(jié)n ORL A,R1 。拼字n INC R1 n MOV R1,A 。存放結(jié)果 n AJMP $n ENDn 執(zhí)行完后如何不改變內(nèi)存和寄存器的值?開始( 40H)內(nèi)容送 A,屏蔽高位,交換高低位 A← ( R0)A與( R1)或后送(42H)取( 41H)內(nèi)容,屏蔽高位,送 A返回圖 42 例 2流程圖計算機與通信工程學院 分支程序設計n 在處理實際事務中,只用簡單程序設計的方法是不夠的。因為大部分程序總包含有判斷、比較等情況。n 根據(jù)判斷、比較的結(jié)果轉(zhuǎn)向不同的分支計算機與通信工程學院例 43: 兩個無符號數(shù)比較大小n 設兩個連續(xù)外部 RAM單元 ST1和 ST2中存放不帶符號的二進制數(shù),找出其中的大數(shù)存入 ST3單元中。n ST1 EQU 8040Hn ORG 0000Hn JMP STARTn ORG 0030Hn START:n MOV DPTR,ST1n MOV A,12Hn MOVX DPTR,An INC DPTRn MOV A,34Hn MOVX DPTR,An LOOP:n CLR C 。進位位清零n MOV DPTR,ST1 。設數(shù)據(jù)指針n MOVX A,DPTR 。取第一數(shù)n MOV R2,A 。暫存 R2n INC DPTRn MOVX A,DPTR 。取第二個數(shù)n SUBB A,R2 。 兩數(shù)比較n JNC BIG1n XCH A,R2 。第一數(shù)大n BIG0:n INC DPTRn MOVX DPTR,A 。存大數(shù)n SJMP $n BIG1:n MOVX A,DPTR。第二數(shù)大n SJMP BIG0n END 開始設置指針 DPTR初始值取第一個數(shù)存入 R2取第二個數(shù)后者減前者進位標志是否為 0?存后者結(jié)束存前者圖 53 例 4流程計算機與通信工程學院例 44: 編制計算符號函數(shù) y=SGN(x)的程序n ARE EQU 8040Hn BUF EQU 8060Hn ORG 0000Hn JMP STARTn ORG 0030Hn START:n MOV DPTR,AREn MOV A,0F0Hn MOVX DPTR,An LOOP:n MOV DPTR,ARE 。進位位清零n MOVX A,DPTR 。取第一數(shù)n JZ SULn JB ,NEGn MOV A,01Hn SUL:n MOV DPTR,BUFn MOVX DPTR,An JMP LOOPn NEG:n MOV A,0FFHn SJMP SULn END 計算機與通信工程學院 循環(huán)程序設計n 簡單程序,每條指令只執(zhí)行一次n 分支程序則根據(jù)條件的不同,會跳過一些指令,執(zhí)行另一些指令。n 它們的特點是,每一條指令至多執(zhí)行一次。n 在處理實際事務時,有時會遇到多次重復處理的問題,用循環(huán)程序的方法來解決就比較合適。循環(huán)程序中的某些指令可以反復執(zhí)行多次。n 采用循環(huán)程序,使程序縮短,節(jié)省存儲單元。重復次數(shù)越多,循環(huán)程序的優(yōu)越性就越明顯。n 程序的執(zhí)行時間并不節(jié)省。由于要有循環(huán)準備、結(jié)束判斷等指令,速度要比簡單程序稍慢些。 計算機與通信工程學院循環(huán)程序組成n 循環(huán)程序一般由五部分組成:n 初始化部分:n 為循環(huán)程序做準備。n 如:設置循環(huán)次數(shù)計數(shù)器的初值,地址指針置初值,為循環(huán)變量賦初值等。n 處理部分:n 為反復執(zhí)行的程序段,是循環(huán)程序的實體。n 修改部分:n 每執(zhí)行一次循環(huán)體后,對指針作一次修改,使指針指向下一數(shù)據(jù)所在位置,為進入下一輪處理作準備。n 控制部分:n 根據(jù)循環(huán)次數(shù)計數(shù)器的狀態(tài)或循環(huán)條件,檢查循環(huán)是否能繼續(xù)進行,若循環(huán)次數(shù)到或循環(huán)條件不滿足,應控制退出循環(huán),否則繼續(xù)循環(huán)。
點擊復制文檔內(nèi)容
外語相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1