Programa 8086 para multiplicar dos números de 8 bits

Problema: escriba un programa en el microprocesador 8086 para multiplicar dos números de 8 bits, donde los números se almacenan desde el desplazamiento 500 y almacenan el resultado en el desplazamiento 600.

Ejemplos: las entradas y salidas se dan en representación hexadecimal.

Algoritmo –

  1. Cargue datos desde el desplazamiento 500 para registrar AL (primer número)
  2. Cargue datos del desplazamiento 501 al registro BL (segundo número)
  3. Multiplícalos (AX=AL*BL)
  4. Almacene el resultado (contenido del registro AX) para compensar 600
  5. Deténgase

Programa –

DIRECCIÓN DE MEMORIA MNEMOTÉCNICA COMENTARIO
400 MOV SI, 500 SI=500
403 MOV DI, 600 DI=600
406 MOV AL, [SI] AL<-[SI]
408 INC SI SI=SI+1
409 MOV BL, [SI] BL<-[SI]
40B MUL BL AX=AL*BL
40D MOV [ED], AX AX->[DI]
40F HLT FINAL

Explicación –

  1. MOV SI, 500 conjunto 500 a SI
  2. MOV DI, 600 conjunto 600 a DI
  3. MOV AL, [SI] carga el contenido del desplazamiento SI para registrar AL
  4. INC SI aumenta el valor de SI en 1
  5. MOV BL, [SI] carga el contenido del desplazamiento SI para registrar BL
  6. MUL BL multiplica el contenido del registro AL y BL
  7. MOV [DI], AX almacena el resultado (contenido del registro AX) para compensar DI
  8. Fin del HLT .

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 *