ascii碼與bcd碼的轉(zhuǎn)換表 單片機BCD碼如何轉(zhuǎn)換為ASCII碼?
單片機BCD碼如何轉(zhuǎn)換為ASCII碼?用查表法將十六進制數(shù)轉(zhuǎn)換成ascⅡ代碼:程序流程圖:分析:也可以用計算法實現(xiàn),但比較復(fù)雜。如果我們用查表法來解決這個問題,整個程序就會簡單易懂。將0-F對應(yīng)的AS
單片機BCD碼如何轉(zhuǎn)換為ASCII碼?
用查表法將十六進制數(shù)轉(zhuǎn)換成ascⅡ代碼:程序流程圖:分析:也可以用計算法實現(xiàn),但比較復(fù)雜。如果我們用查表法來解決這個問題,整個程序就會簡單易懂。將0-F對應(yīng)的ASCⅡ碼從地址開始依次放入單元中,通過設(shè)置地址指針和索引指針來實現(xiàn)。程序和流程圖如下:(R)ORG 0400h,rmov dptr,#0600h;設(shè)置地址指針,rmov a,R0;將轉(zhuǎn)換值取為a,ranl a,#0Fh;屏蔽高位4位以獲得地址更改地址,rmovc a,@a dptr;查表,rmov 20h,a;保存結(jié)果,rsjmp$ org 0600h,RDB 30h,31h,32H,33H,34h,RDB 35h,36h,37h,38h,39H;RDB 41h,42h,43h,44h,45h,46h
要將非壓縮BCD碼轉(zhuǎn)換成ASCII碼,只需添加30h20h單元將其轉(zhuǎn)換成ASCII碼并放入50hmov a,haddca 20hmov 50h,A21H單元將其轉(zhuǎn)換成ASCII碼并放入51hmov a,haddca 21hmov 51h,a即可使用10個周期進行編碼