📄 ch18_将外部存储器(16位)值转化成6个bcd码.asm
字号:
;FUNCTION NAME: HEX_TO_BCD
;FUNCTION: CONVERT 2 BYTE HEX TO 6 BYTE BCD CODE
;HEX DATA IN(DPTR+1)(DPTR)
;BCD RESULT IN (09H)(08H)(07H)(06H)
;
HEX_TO_BCD
MOV R0,#04H
MOVX A,@DPTR
MOV @R0,A
INC R0
INC DPTR
MOVX A,@DPTR
MOV @R0,A
INC R0
LCALL CLEAR_INTERNAL_DATA_MEMORY+2 ;CLEAR(06)(07)(08)(09)
MOV 09H,#16 ;COUNT
$1 MOV R0,#04H ;HEX DATA
MOV R2,#02H
CLR C
$2 MOV A,@R0 ;SHIFT LEFT 1 BIT WITH CARRY
RLC A
MOV @R0,A
INC R0
DJNZ R2,$2
MOV R2,#03H
$3 MOV A,@R0 ;A=(06H)
ADDC A,A ;A=A+CARRY
DA A ;DECIMAL ADJUST
MOV @R0,A
INC R0
DJNZ R2,$3
DJNZ 09H,$1
RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -