51单片机汇编语言把ASCII码转换为压缩BCD码

在以2000H为首地址的存储区里存放着20个用ASCII码表示的0-9的数,试编程将他们转换成BCD码(即一个单元存放2位BCD码)的形式存放在3000H-3009H单元中!

第1个回答  推荐于2016-03-19
mov R6,#30H
mov R7,#0
mov DPTR,#2000H
mov R2,10
L1:
movx A,@DPTR
inc DPTR
anl A,#0FH
swap A
mov R0,A
movx A,@DPTR
inc DPTR
anl A,#0FH
orl A,R0
push DPH
push DPL
mov DPH,r6
mov DPL,r7
movx @DPTR,A
inc DPTR
mov R6,DPH
mov R7,DPL
pop DPL
pop DPH
djnz R2,L1本回答被提问者采纳
相似回答