Problema: escriba un programa para agregar el contenido de la ubicación de memoria 2000 : 0500 con el contenido de la ubicación de memoria 3000 : 0600 y almacene el resultado en la ubicación de memoria 5000 : 0700 .
Ejemplo –
Algoritmo –
- Mover 2000 al registro CX
- Mover CX al segmento DS (ahora estamos en el segmento de datos 2000)
- Mover el valor de 500 al registro AX
- Mover 3000 al registro CX
- Mover CX al segmento DS (ahora estamos en el segmento de datos 3000)
- Agregue valor de AX (acumulador) con valor en la memoria 600
- Mover 5000 al registro CX
- Mover CX al segmento ES (ahora estamos en 5000 segmentos adicionales)
- Mueva el contenido de AX a la ubicación de memoria 700
- Deténgase
Programa –
Memoria | Mnemotécnica | operandos | Comentario |
---|---|---|---|
1000 | MOVIMIENTO | CX, 2000 | [CX] <-2000 |
1004 | MOVIMIENTO | DS, CX | [DS] <- [CX] |
1006 | MOVIMIENTO | HACHA, [500] | [EJE] <- [500] |
100A | MOVIMIENTO | CX, 3000 | [CX] <- 3000 |
100E | MOVIMIENTO | DS, CX | [DS] <- [CX] |
1010 | AGREGAR | HACHA, [600] | [EJE] <- [EJE] + [600] |
1014 | MOVIMIENTO | CX, 5000 | [CX] <- 5000 |
1018 | MOVIMIENTO | ES, CX | [ES] <- [CX] |
101A | MOVIMIENTO | [700], HACHA | [700] <- [AX] RESULTADO |
101E | HLT | Deténgase |
Explicación –
Los registros utilizan AX, CX para fines generales.
Los segmentos utilizaron DS, ES para cambiar los segmentos.
MOV se usa para transferir los datos
ADD se usa para agregar
HLT se usa para detener el programa