RE:converción de ascci a decimal
En realidad apenas estoy aprendiendo a programar , pero creo que esto te puede servir de guía.
Lo que tienes que hacer es restar al código ascii 30, por ejemplo:
1 en ascii es 31.... haces la operacion 31 - 30 = 1
te pongo el procedimiento para una cifra 2 dos dígitos llamada valor
push si ; almacena temporalmente si
push bx ; almacena temporalmente bx
xor ah,ah ;limpias ah
lea si,valor ;cargas valor en si
mov al,[si] ;cargas el valor de la primera casilla de si en al
sub al,30h ;le restas a al 30 para pasar a decimal
mov bl,10 ;cargas 10 en bl
mul bl ;multiplicas bl por 10 para obtener decenas
push ax ,guardas el resultado en ax
inc si ; incrementas si
mov al,[si] ;cargas el valor de la segunda casilla en al
sub al,30h ;repites la operación
pop bx
add al,bl
pop bx
pop si