
51单片机汇编语言把ASCII码转换为压缩BCD码
在以2000H为首地址的存储区里存放着20个用ASCII码表示的0-9的数,试编程将他们转换成BCD码(即一个单元存放2位BCD码)的形式存放在3000H-3009H单元...
在以2000H为首地址的存储区里存放着20个用ASCII码表示的0-9的数,试编程将他们转换成BCD码(即一个单元存放2位BCD码)的形式存放在3000H-3009H单元中!
展开
1个回答
展开全部
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
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
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询