Temas
1.1.- Hardware del 8085
Dentro del 8085 tenemos los siguientes registros:
Todos estan conectados entre si, y el 8085 tiene exteriormente 3 buses como todos los microprocesadores (pero con tamaños diferentes):
Nombre bits comentarios
D.B.
Bus de datos
(data bus)
8
conectado al R.I. desde este registro la U.C. lee lasinstrucciones y las procesa.
A.B.
Bus de direcciones
(Adrress Bus)
16
conectado al PC indica la dirección de memoria del programa que se esta leyendo.
C.B.
Bus de Control
10
Conectado a la U.C. para controlar el sistema
Hay que señalar que el 8085 tiene el bus de direcciones multiplexado, es decir, tiene 8 pines AD0 .... AD7 que son bus de datos y bus de direcciones (laparte baja), para diferenciarlo tiene un pin llamadoALE que cuando es 0 las lineas AD0...AD7 es bus de datos D0...D7, y cuando ALE=1, las lineas AD0...AD7 es parte baja del bus de direcciones A0...A7.
El bus de control además del ALE, tiene los siguientes pines:
Lectura Escritura: RD# y WR#
Acceso a memoria o a periféricos: IO/M#.
pin indicador de estar preparado para atender aldispositivo exterior : READY.
pin indicador que el dispositivo externo esta ocupando los buses : HOLD.
pin indicador que el 8085 no hace caso a los buses HLDA.
pin indicador que el 8085 se ha reseteado RESETOUT.
y pines indicadores de estado S0 S1 (S0S1 =01 Escribe dato, =10 Lee dato, =11 Busca dirección).
En la pag 280 y 281 explica el funcionamiento de cada uno de losregistros, unidades etc.., señala brevemente el significado de cada uno de ellos:
Descripción
A
B, C
D, E
H, L
Flag
S
Z
AC
P
CY
ALU
U.C.
R.I.
P.C.
S.P.
1.2.- Instrucciones del 8085
Nomenclatura:
r = un registro de 1 byte , puede ser cualquiera de estos : A, B,C,D,E,H,L.
(rs =registroorigen de datos, source, rd = registro destino de los datos)
[1000] = el dato almacenado en la dirección 1000H
[HL] = el dato almacenado en la dirección contenida en el registro HL
M = " " "
dato = un número de 1 byte, por ejemplo 4AH, suelen ser los datos.
addr = un número de 2 bytes, por ejemplo 10B2H, suelen ser las direcciones
H=hexadecimal, B=Binario, D = Decimal
1.2.1.- Instruccionesde transferencia de datos
MOV rd,rs
MOV rd,M
MOV M,rs
MVI rd,dato LDA addr
STA addr
LDAX B
STAX B
LDAX D
STAX D LHLD addr
SHLD addr
XCHG LXI B,addr
LXI D,addr
LXI H,addr
ejemplo de utilización :
1.2.2.- Instrucciones aritméticas
ADD rs
ADD M
ADI dato
SUB rs
SUB M
SBI dato
ADC rs
ADC M
ACI dato
SBB rs
SBB M
SBI dato
INR rsINR M
INX B
INX D
INX H
DCR rs
DCR M
DCX B
DCX D
DCX H
DAD B
DAD D
DAA
STC
CMC
1.2.3.- Instrucciones lógicas
ANA rs
ANA M
ANI dato
XRA rs
XRA M
XRA dato
ORA rs
ORA M
ORI dato
CMA
CMP rs
CMP M
CPI dato
alteran solo el flag : Z, S, CY, AC ...
1.2.4 Instrucciones de desplazamiento
RLC
RRC
RAL
RAR
1.2.5Instrucciones de salto
JMP addr
Jcondicion addr
PCHL
RSTn
condición puede ser alguna de las siguientes:
Z
NZ
P
M
C
NC
PO
PE
1.2.6 Instrucciones para las subrutinas
CALL addr
Ccondición
RET
Rcondición
1.2.7.- Pila
PUSH B
POP B
PUSH D
POP D
XTHL
SPHL
1.2.8.-Instrucciones de control
HLT
NOP
IN puerto
OUT puerto
SIM
EI2.- Manejo del simulador 8085
a).- Vamos a realizar un pequeño ejemplo de funcionamiento. Vamos a mover el contenido de la dirección 2000H al acumulador, y almacenarlo en la 2001H, y el contenido de la dirección 2002H moverlo al registro B, y almacenarlo en la 2003H.Escribir el siguiente programa en un editor, por ejemplo el EDIT de MS-DOS, guardarlo como PRUEBA.ASM el archivo...
Regístrate para leer el documento completo.