Programa 8086 para determinar cubos de números en una array de n números

Problema: escriba un programa en el microprocesador 8086 para encontrar los cubos de n números de 8 bits, donde el tamaño «n» se almacena en el desplazamiento 500 y los números se almacenan desde el desplazamiento 501 y almacenan los números resultantes en el desplazamiento 501. (suponiendo que los cubos resulta estar en el límite de solo 8 bits).

Ejemplo –

Algoritmo –

  1. Almacene 500 en SI y cargue datos desde el desplazamiento 500 para registrar CL y establezca el registro CH en 00 (para contar).
  2. Aumenta el valor de SI en 1.
  3. Cargue el número (valor) del desplazamiento SI al registro AL.
  4. Mueve el valor del registro AL a BL.
  5. Multiplique el valor del registro AL por sí mismo.
  6. Multiplique el valor en el registro AL por BL.
  7. Almacene el resultado (valor del registro AL) en el desplazamiento de memoria SI.
  8. Aumenta el valor de SI en 1.
  9. Bucle por encima de 6 hasta que el registro CX obtenga 0.

Programa –

DIRECCIÓN DE MEMORIA MNEMOTÉCNICA COMENTARIO
400 MOV SI, 500 SI<-500
403 CL MOV, [SI] CL<-[SI]
405 CA MOV, 00 CH<-00
407 INC SI SI<-SI+1
408 MOV AL, [SI] AL<-[SI]
40A MOV BL, AL BL<-AL
40C MUL AL AX=AL*AL
40E MUL BL AX=AL*BL
410 MOV [SI], AL AL->[SI]
412 INC SI SI<-SI+1
413 BUCLE 408 SALTAR A 408 SI CX!=0 y CX=CX-1
415 HLT final

Explicación –

  1. MOV SI, 500: establezca el valor de SI en 500
  2. MOV CL, [SI]: cargar datos desde el desplazamiento SI al registro CL
  3. MOV CH, 00: establece el valor del registro CH en 00
  4. INC SI: aumenta el valor de SI en 1.
  5. MOV AL, [SI]: carga el valor del desplazamiento SI al registro AL
  6. MOV BL, AL: mueve el valor del registro AL a BL.
  7. MUL AL: multiplica el valor del registro AL por AL.
  8. MUL BL: multiplica el valor del registro AL por BL.
  9. MOV [SI], AL: almacena el valor del registro AL en el desplazamiento SI.
  10. INC SI: aumenta el valor de SI en 1.
  11. BUCLE 408: salta a la dirección 408 si CX no es 0 y CX=CX-1.
  12. HL: detener

Publicación traducida automáticamente

Artículo escrito por Amber_Saxena 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 *