8-bit HEX to ASCII Convertor
Written by Amol Shah, on Aug-2008
Views 830

This subroutine converts 8 bit Hexadecimal number into its equivalent ASCII value. The number to be converted should be in the Accumulator. The output ASCII number is stored in R0, R1 and R2. R0 contains the MSB i.e. the Hundreds place, R1 contains the Tens Place and R2 contains the LSB i.e. the Units Place.

The ASCII code for numbers 0-9 is 48-57 i.e. 30h – 39h

  

hextoascii:

                mov r0,#30h

                mov r1,#30h

                mov r2,#30h

                cjne a,#00h,c1_hextobcd             //check if number is 0 if not then continue

                ret

 

c1_hextobcd:

                clr c

                mov b,#100                        //divide by 100

                div ab

                orl a,r0

                mov r0,a                              //save 100th place in R0

                clr c

                mov a,b

                mov b,#10                           //Divide by 10

                div ab

                orl a,r1

                mov r1,a                              //Save 10th place in R1

                mov a,b

                orl a,r2

                mov r2,a                              //Save  units place in R2

                ret

 



Add this page to your favorite Social Bookmarking websites
Reddit! Del.icio.us! JoomlaVote! Google! Live! Facebook! StumbleUpon! Yahoo! Free social bookmarking plugins and extensions for Joomla! websites!
Quote this article in website Favoured Print Send to friend Related articles Save this to del.icio.us

Users' Comments (0) RSS feed comment

No comment posted

Add your comment



mXcomment 1.0.5 © 2007-2009 - visualclinic.fr
License Creative Commons - Some rights reserved
 
< Prev   Next >
Home arrow Code Library arrow 8-bit HEX to ASCII Convertor