Microprocesador: conjuntos de instrucciones 8085
Echemos un vistazo a la programación del microprocesador 8085.
Los conjuntos de instrucciones son códigos de instrucciones para realizar alguna tarea. Se clasifica en cinco categorías.
S.No. | Instrucción y descripción |
---|---|
1 | Instrucciones de control A continuación se muestra la tabla que muestra la lista de instrucciones de control con sus significados. |
2 | Instrucciones lógicas A continuación se muestra la tabla que muestra la lista de instrucciones lógicas con sus significados. |
3 | Instrucciones de ramificación A continuación se muestra la tabla que muestra la lista de instrucciones de ramificación con sus significados. |
4 | Instrucciones aritméticas A continuación se muestra la tabla que muestra la lista de instrucciones aritméticas con sus significados. |
5 | Instrucciones de transferencia de datos A continuación se muestra la tabla que muestra la lista de instrucciones de transferencia de datos con sus significados. |
8085 - Programas de demostración
Ahora, echemos un vistazo a algunas demostraciones de programas usando las instrucciones anteriores:
Sumar dos números de 8 bits
Escriba un programa para agregar datos en la ubicación de memoria 3005H y 3006H y almacene el resultado en la ubicación de memoria 3007H.
Problem demo -
(3005H) = 14H
(3006H) = 89H
Result -
14H + 89H = 9DH
El código del programa se puede escribir así:
LXI H 3005H : "HL points 3005H"
MOV A, M : "Getting first operand"
INX H : "HL points 3006H"
ADD M : "Add second operand"
INX H : "HL points 3007H"
MOV M, A : "Store result at 3007H"
HLT : "Exit program"
Intercambio de ubicaciones de memoria
Escriba un programa para intercambiar los datos en la ubicación de memoria de 5000M y 6000M.
LDA 5000M : "Getting the contents at5000M location into accumulator"
MOV B, A : "Save the contents into B register"
LDA 6000M : "Getting the contents at 6000M location into accumulator"
STA 5000M : "Store the contents of accumulator at address 5000M"
MOV A, B : "Get the saved contents back into A register"
STA 6000M : "Store the contents of accumulator at address 6000M"
Organizar números en orden ascendente
Escriba un programa para organizar los primeros 10 números de la dirección de memoria 3000H en orden ascendente.
MVI B, 09 :"Initialize counter"
START :"LXI H, 3000H: Initialize memory pointer"
MVI C, 09H :"Initialize counter 2"
BACK: MOV A, M :"Get the number"
INX H :"Increment memory pointer"
CMP M :"Compare number with next number"
JC SKIP :"If less, don’t interchange"
JZ SKIP :"If equal, don’t interchange"
MOV D, M
MOV M, A
DCX H
MOV M, D
INX H :"Interchange two numbers"
SKIP:DCR C :"Decrement counter 2"
JNZ BACK :"If not zero, repeat"
DCR B :"Decrement counter 1"
JNZ START
HLT :"Terminate program execution"