Problema: escriba un programa en lenguaje ensamblador para agregar dos números de 8 bits almacenados en la dirección 2050 y la dirección 2051 en el microprocesador 8085. La dirección inicial del programa se toma como 2000.
Ejemplo –
Algoritmo –
- Cargue el primer número desde la ubicación de memoria 2050 al acumulador.
- Mueva el contenido del acumulador al registro H.
- Cargue el segundo número desde la ubicación de memoria 2051 al acumulador.
- Luego agregue el contenido del registro H y el acumulador usando la instrucción «ADD» y almacene el resultado en 3050
- El acarreo generado se recupera usando el comando «ADC» y se almacena en la ubicación de memoria 3051
Programa –
Dirección de memoria | Mnemotécnica | Comentario |
---|---|---|
2000 | LDA 2050 | A<-[2050] |
2003 | MOV H, A | H<-A |
2004 | LDA 2051 | A<-[2051] |
2007 | AÑADIR H | A<-A+H |
2008 | MOV L, A | L←A |
2009 | MVI A 00 | A←00 |
200B | A DC A | A←A+A+llevar |
200C | MOV H, A | H←A |
200D | SHLD 3050 | H→3051, L→3050 |
2010 | HLT |
Explicación –
- LDA 2050 mueve el contenido de la ubicación de memoria 2050 al acumulador.
- MOV H, A copia el contenido del acumulador para registrar H en A
- LDA 2051 mueve el contenido de la ubicación de memoria 2051 al acumulador.
- ADD H agrega contenido de A (acumulador) y registro H (F9). El resultado se almacena en A mismo. Para todas las instrucciones aritméticas, A es por defecto un operando y A también almacena el resultado.
- MOV L, A copia el contenido de A (34) a L
- MVI A 00 mueve datos inmediatos (es decir, 00) a A
- El ADC A suma el contenido de A(00), el contenido del registro especificado (es decir, A) y el acarreo (1). Como ADC también es una operación aritmética, A es por defecto un operando y A también almacena el resultado.
- MOV H, A copia el contenido de A (01) a H
- SHLD 3050 mueve el contenido del registro L (34) en la ubicación de memoria 3050 y el contenido del registro H (01) en la ubicación de memoria 3051
- HLT deja de ejecutar el programa y detiene cualquier ejecución adicional
Publicación traducida automáticamente
Artículo escrito por AnmolAgarwal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA