单片机中如何将BCD码拆开_单片机二进制BCD码转换实验程序流程图
二進制BCD碼轉換
一、實驗目的
1.掌握簡單的數(shù)值轉換算法
2.基本了解數(shù)值的各種表達方法
二、實驗說明
單片機中的數(shù)值有各種表達方式,這是單片機的基礎。掌握各種數(shù)制之間的轉換是一種基本功。我們將給定的一字節(jié)二進制數(shù),轉換成二十進制(BCD)碼。將累加器A的值拆為三個BCD碼,并存入RESULT開始的三個單元,例程A賦值#123。
三、實驗內容及步驟
1.安裝好仿真器,用串行數(shù)據(jù)通信線連接計算機與仿真器,把仿真頭插到模塊的單片機插座中,打開模塊電源,插上仿真器電源插頭(USB線)。
2.啟動PC機,打開KEIL軟件,軟件設置為模擬調試狀態(tài)。在所建的Project文件中添加TH2.ASM源程序進行編譯,編譯無誤后,全速運行程序,打開數(shù)據(jù)窗口(DATA) (在MEMORY#3中輸入D:30H 回車),點擊暫停按鈕,觀察地址30H、31H、32H的數(shù)據(jù)變化,30H更新為01,31H更新為02,32H更新為03。用鍵盤輸入改變地址30H、31H、32H的值,點擊復位按鈕后,可再次運行程序,觀察其實驗效果。修改源程序中給累加器A的賦值,重復實驗,觀察實驗效果。
3.打開CPU窗口,選擇單步或跟蹤執(zhí)行方式運行程序,觀察CPU窗口各寄存器的變化,可以看到程序執(zhí)行的過程,加深對實驗的了解。
四、流程圖及源程序(見光盤中的程序文件夾)
1.源程序
RESULT EQU 30H
ORG 0000H
LJMP START
BINTOBCD:
MOV B,#100
DIV AB
MOV RESULT,A ;除以100得百位數(shù)
MOV A,B
MOV B,#10
DIV AB
MOV RESULT+1,A ;余數(shù)除以10得十位數(shù)
MOV RESULT+2,B ;余數(shù)為個位數(shù)
RET
START:
MOV SP,#40H
MOV A,#123
CALL BINTOBCD
LJMP $
END
總結
以上是生活随笔為你收集整理的单片机中如何将BCD码拆开_单片机二进制BCD码转换实验程序流程图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: uibot和按键精灵区别_uibot和按
- 下一篇: 简述python程序执行原理_Pytho