Ensamblador - ¿Cómo recibir un número en Hex y convertirlo a BCD?

 
Vista:
Imágen de perfil de Carlos
Val: 13
Ha mantenido su posición en Ensamblador (en relación al último mes)
Gráfica de Ensamblador

¿Cómo recibir un número en Hex y convertirlo a BCD?

Publicado por Carlos (5 intervenciones) el 15/03/2019 17:48:08
Pues eso. Lo cierto es que el profesor no da clases, sólo deja actividades y hay "recursos" para estudiar, pero están en SCRIBD y hay qué pagar para verlos :/ Así que no sé casi nada de ensamblador. Me he tirado las últimas 5 horas viendo tutoriales y códigos de otros intentando encontrar algo útil, pero nada... Así que esta es mi última esperanza.

"Diseñar e implementar un programa en lenguaje ensamblador que reciba un número de 16 bits introducido por el teclado con la función scan como valor hexadecimal y sea convertido a bcd para luego imprimirse en pantalla como cadena decimal usando la función print.
Sube el archivo fuente o el archivo comprimido de proyecto del programa de tu practica, deben incluirse todos los archivos necesarios para poder ejecutarlo.

Debes leer la documentación del emu8086 para la librería contenida en el archivo emu8086.inc en tutoriales sección 5. (Aquí no hay nada, por cierto.)
Para terminar el programa debes usar la interrupción 20h.

La interrupción 21h sólo será valida si es que esta siendo usada por las funciones de la librería emu8086.inc"

Ni siquiera nos explicó que es un bcd. No ha explicado nada, sólo pide actividades que hasta ahora había podido hacer buscando en internet, pero de esto no encuentro nada. Si alguien me pudiera ayudar, estaría infinitamente agradecido.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

¿Cómo recibir un número en Hex y convertirlo a BCD?

Publicado por Nacho (35 intervenciones) el 15/03/2019 18:13:16
Yo nunca he ido a clases de nungún profesor.

Un número en bcd es un número representado en decimal con una cifra en cada nibble, en cada 4 bits. Puede ser empaquetado y desempaquetado. Empaquetado es si en cada byte van dos cifras, una en cada nibble, y desempaquetado si en cada byte hay una cifra con el resto de bytes a 0.

Para pasar de hex a bcd los procesadores de Intel tienen la instrucción daa. No sé si es eso lo que tienes que usar.

Para entradas y salidas hay montones de ejemplos en internet.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar