ASCII字符形式的数字和HEX形式的数字,经常要互换,下面是个例子。
编写子程序,将R1中的2个十六进制数转换为ASCII码后存放在R3和R4中。
;--------------
R1_R3R4:
MOV A, R1
ANL A, #0FH
CALL H_A
MOV R4, A
MOV A, R1
SWAP A
ANL A, #0FH
CALL H_A
MOV R3, A
RET
;--------------
H_A:
CLR C
SUBB A, #0AH
JC A_30
ADD A, #7
A_30:
ADD A, #3AH
RET
;--------------
H_A2:
ADD A, #90H
DA A
ADDC A, #40H
DA A
RET
;--------------
A_H:
CJNE A, #41H, $ + 3
JC J_30
SUBB A, #7
J_30:
CLR C
SUBB A, #30H
RET
;--------------完