Your not describing what you need so we can understand it.
i.e suppose I gave 50 in bin memory location then P should get display to particular ASCII location
makes NO sense.
ASCII location? 50 is not a binary number. Binary has only 2 digits 0 and 1.
You might want the stored number 50 (32+16+2) 0011 0010 or 32h to print as 50. Printing 32h is much easier.
Something easy is making 50 print as Hex 32h is much easier..
that requires some bit shifting and masking, but the root is making 0-16 print as 0-F.
The trick there is ASCII 48d is a '0'
and ASCII 65d is a capital "A".
So to print an internal number 0-9, you print the character 48+n; where n=0 through 9. Thus ASCII 48 is a '0'
When the number is between 10 and 15, you print the character 65 +n; where n=10 through 15.
A carriage return is 13 an a line feed is 10.
printing values of registers/memory locations in decimal is a typical programming assignment for beginners.
Now I could make the assignment harder by saying it's a signed number from -127 to 128, use leading zero supression. A positive number is represented by a leading space and negative number a "-" sign.