Problema: escriba un programa en lenguaje ensamblador para encontrar un máximo de dos números de 8 bits en el microprocesador 8085.
Suposiciones: las ubicaciones de memoria inicial y las ubicaciones de memoria de salida son 2050, 2051 y 3050 respectivamente.
Ejemplo –
Algoritmo –
- Valor de carga en el acumulador
- Luego, copie el valor a cualquiera de los registros.
- Cargue el siguiente valor en el acumulador
- Compara ambos valores
- Verifique la bandera de acarreo, si se restablece, salte a la dirección requerida para almacenar el valor
- Copie el resultado en el acumulador
- Almacenar el resultado en la dirección requerida
Programa –
DIRECCIÓN DE MEMORIA | MNEMOTÉCNICA | COMENTARIOS |
---|---|---|
2000 | LDA 2050 | A<-25 |
2003 | MOV B, A | B<-25 |
2004 | LDA 2051 | A<-15 |
2007 | CMP B | AB |
2008 | JNC 200C | Saltar si la bandera de acarreo es Restablecer (bandera de acarreo = 0) |
200B | MOV A, B | A<-25 |
200C | STA 3050 | 3050<-25 |
200F | HLT | Termina el programa |
Explicación –
- LDA 2050: carga el valor en la ubicación de memoria 2050
- MOV B, A: asigna valor de A a B
- LDA 2051: carga el valor en la ubicación de memoria 2051
- CMP B: compare valores restando B de A
- JNC 200C: salta a la ubicación de memoria 200C si la bandera de acarreo es Restablecer (bandera de acarreo = 0)
- STA 3050: almacene el resultado en la ubicación de memoria 3050
- HLT: finaliza el programa
Publicación traducida automáticamente
Artículo escrito por aishwarya.27 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA