ASCII 碼和十六進(jìn)制數(shù)的轉(zhuǎn)換?。?1單片機(jī)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
題目:用查表法將一位十六進(jìn)制數(shù)轉(zhuǎn)換為ASCII碼,入口參數(shù)放在內(nèi)部RAM 50H中,出口參數(shù)在R0中。
要求:用匯編語言完成編程(用DB "0","1"......)。
;---------------------------------
最佳答案:
轉(zhuǎn)換程序如下:
D2A:
MOV A, 50H
ADD A, #2 ;加上查表時(shí)的指令地址和表格首址的差
MOVC A, @A + PC
MOV R0, A
RET
TABLE:
DB "0123456789ABCDEF" ;用:DB '0', '1', ...,形式也可以
;完
;---------------------------------
原題網(wǎng)址:
單片機(jī)編程!!將 ASCII 碼轉(zhuǎn)化為十六進(jìn)制數(shù),設(shè) ASCII 碼存放在累加器中,轉(zhuǎn)化結(jié)果存放到B中。
提示:由 ASCII 碼表可知,30H-39H為0-9的 ASCII 碼,41H-46H為A-F的 ASCII 碼。
將 ASCII 碼減 30H(0-9)或 37H(A-F)就可獲得對(duì)應(yīng)的十六進(jìn)制數(shù)。
我個(gè)人覺得很有難度的作業(yè)!望有學(xué)之士能 幫我做出?。∪f分感謝??!
懸賞分:20 - 解決時(shí)間:2010-1-6 12:28
;--------------------------------
正確答案:
;程序如下:
MOV B, A
CLR C
SUBB A, #3AH
JC DDD
SUB A, #07H
DDD: ADD A, #0AH
XCH A, B
RET
;---------------------------------