PIC Microcontoller Radix Math Method

Binary to ASCII hexadecimal

By: paulswork@hotmail.com

here are a couple of BIN to ASCII converters I wrote, might be useful.
;**********************************************************************
; Routine:BINtoASCII
; Input Registers:BUFFER
; Output Registers: ASCII_MSW, ASCII_LSW
; Internal Registers:None
; CALLS:None
; Function: Receives a binary number in the input register BUFFER. This 
; is then converted into two ASCII output bytes.
;**********************************************************************
BINtoASCII	CLRF	ASCII_MSW	;Clear output registers
		CLRF	ASCII_LSW
		SWAPF	BUFFER,W	;Get upper nibble
		ANDLW	h'0F'		;Mask off unwanted bits
		MOVWF	ASCII_MSW	;Save
		MOVLW 	10		;For BCD lower nibble only (lower 4 bits)
		SUBWF 	ASCII_MSW,W
		MOVLW 	h'30'		;If numerical add ascii value (-10)
		BTFSC 	StatusREG,C
		MOVLW 	h'37'		;If alphabetical, then add a different ascii value (-10)
		ADDWF 	ASCII_MSW,1	;save in output reg
		MOVF	BUFFER,W	;get lower nibble of input byte
		ANDLW	h'0F'		;mask off unwanted data
		MOVWF	ASCII_LSW
		MOVLW 	10		
		SUBWF 	ASCII_LSW,W
		MOVLW 	h'30'
		BTFSC 	StatusREG,C
		MOVLW 	h'37'
		ADDWF 	ASCII_LSW,1	;and save in output reg
		retlw   0

Code: