<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 單片機第五次作業(yè)

          單片機第五次作業(yè)

          作者: 時間:2016-11-25 來源:網(wǎng)絡(luò) 收藏
          作業(yè):將4位二進制數(shù)轉(zhuǎn)換為ASCII碼
          入口:R2=4位二進制數(shù),只取低四位。
          出口:R2=轉(zhuǎn)換后的ASCII碼
          1、先fileànew建asm文件20.asm
          BIN2ASC:MOV 10H,R2
          ANL 10H,#0FH
          PUSH 10H
          MOV A,10H
          CLR C
          SUBB A,#0AH
          POP 10H
          MOV A,10H
          JC LOOP
          ADD A,#07H
          LOOP:ADD A,#30H
          MOV R2,A
          RET
          END
          為了調(diào)試時看數(shù)據(jù),預(yù)先在R2中賦值為7CH,所以程序前加:

          MOV R2,#7CH
          程序變?yōu)椋?br />MOV R2,#7CH
          BIN2ASC:MOV 10H,R2
          ANL 10H,#0FH
          PUSH 10H
          MOV A,10H
          CLR C
          SUBB A,#0AH
          POP 10H
          MOV A,10H
          JC LOOP
          ADD A,#07H
          LOOP:ADD A,#30H
          MOV R2,A
          RET
          END
          2、建新工程,Projectànewproject,選AtemlàAT89C51,導(dǎo)入文件20.asm。
          注意,對初學(xué)者,一個工程里只能有本程序20.asm,無關(guān)的程序要刪除,新試驗一個程序最好重新建工程,以保證一個工程里只有你要試驗的那一個程序。
          3、可見程序




          4、編譯通過后,點debug下的start/stop開始調(diào)試,step和stepover都是單步調(diào)試,step是遇到子程序或中斷也要進入進行單步調(diào)試,stepover是遇到子程序或中斷當(dāng)一句一次執(zhí)行完。本程序物子程序,二者是一樣的。我們執(zhí)行一句得到:


          可見:R2值變?yōu)?ch.繼續(xù)執(zhí)行:
          點view àmemory windows,再輸入D:10h回車,得到:





          10H處值為7CH.下一步:

          可見,10H值變?yōu)?ch,下一步:



          A中值變?yōu)?CH,下一步:


          把A與0AH相減,并使10H出棧,此時CY并未改變,仍為0。所以不跳轉(zhuǎn)。繼續(xù)執(zhí)行:





          可見A中值變?yōu)?3H,繼續(xù)往下執(zhí)行:



          A中值變?yōu)?3h,下一步:


          可見R2中值變?yōu)?3h,即為0ch轉(zhuǎn)換后的ACSII碼值.


          關(guān)鍵詞: 單片機ASCII

          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();