DOWNLOAD MAIN
;INPUT : R2 (Lsb) and R3 (Msb) ( binary)
;OUPUT : 30h,31h,32h,33h,34h
; (internal RAM address) (ASCII)
;Use example:
;
;START:
; MOV R2,#low(1234)
; MOV R3,#high(1234)
; LCALL BINTOASC
;
;
BINTOASC:
MOV R0,#30h ; R0 = POUT
MOV DPTR,#TAB ; R=TAB(P)
COM1:
CLR A
MOVC A,@A+DPTR
MOV R7,A
INC DPTR
CLR A
MOVC A,@A+DPTR
MOV R6,A
MOV R4,#'0'
SOMA:
CLR C ;
MOV A,R2 ;
SUBB A,R6 ;
MOV R2,A ;
MOV A,R3 ;
SUBB A,R7 ;
MOV R3,A ;
JC SAIDA ;
INC R4 ;
SJMP SOMA ;
SAIDA:
MOV A,R4
MOV @R0,A
MOV A,R2
ADD A,R6
MOV R2,A
MOV A,R3
ADDC A,R7
MOV R3,A
INC R0
CLR A
MOVC A,@A+DPTR
CJNE A,#1,INCREMENTA
RET
INCREMENTA:
INC DPTR
LJMP COM1
TAB:
DW 10000
DW 1000
DW 100
DW 10
DW 1
|