Home     Projects     Micro     Tools     Delphi     Developer     Site map
HOME  
 
 
       
convert a 16bit binary number in ASCII

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		  
		  
Copyright(c) 2005-2008 sixca.com, All right reserved.
Best view @ 800X600, IE 6.0 up   
Terms of Use  Privacy Policy