Programa 8085 para restar dos números BCD

Problema: escriba un programa en lenguaje ensamblador en un microprocesador 8085 para restar dos números BCD de 8 bits.

Ejemplo –

Algoritmo –

  1. Cargue los datos de la dirección 2051 en A
  2. Mover los datos de A a C
  3. Mueve los datos 99 en A
  4. Restar el contenido de los registros A y C
  5. Incrementa el contenido de A en 1
  6. Mover los datos de A a B
  7. Cargue los datos de la dirección 2050 en A
  8. Agregue los contenidos de A y C y ajústelos en formato BCD usando la instrucción DAA
  9. Almacene el resultado en la dirección de memoria 3050
  10. Deténgase

Programa –

DIRECCIÓN DE MEMORIA MNEMOTÉCNICA COMENTARIO
2000 LDA 2051 A <- 2051
2003 MOV C, A C <- A
2004 MVI A 99 A <- 99
2006 SUB C A = A – C 2007 USD A UN = UN + 1
2008 MOV B, A B <- A
2009 LDA 2050 A <- 2050
200C AÑADIR B A = A + B 200D DAA Convierte el valor hexadecimal a valor BCD 200E STA 3050 3050 <- A 2011 HLT Deténgase

Explicación –

  1. LDA 2051 se utiliza para cargar los datos de la dirección 2051 en A.
  2. MOV C, A se utiliza para mover los datos de A a C.
  3. MVI A 99 se utiliza para mover los datos al registro A.
  4. SUB C se utiliza para restar el contenido de los registros A y C.
  5. INR A se utiliza para incrementar el contenido de A en 1.
  6. MOV B, A se utiliza para mover los datos de A a B.
  7. LDA 2050 se utiliza para cargar los datos de la dirección 2050 en A.
  8. ADD B se utiliza para sumar el contenido de los registros A y B.
  9. DAA se utiliza para convertir el valor hexadecimal en acumulador a valor BCD.
  10. STA 3050 se utiliza para almacenar el contenido de A a 3050.
  11. HLT se utiliza para finalizar el programa.

Publicación traducida automáticamente

Artículo escrito por harshit-chhabra y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *