2015 Practica 03 FUN Computadores
PRÁCTICA 3
PROGRAMACIÓN EN LENGUAJE ENSAMBLADOR (I)
PRÁCTICA 3 PRIMERA PARTE
OBJETIVOS:
•
Programación en lenguaje ensamblador.
•
Instrucciones de transferencia y aritméticas
CONTENIDO:
1.
INTRODUCCIÓN
2.
ENUNCIADO.
3.
INFORME.
4.
ANEXO
PRÁCTICAS:
1.
PROGRAMA PARA EL ENTRENADOR.
1
PRÁCTICAS DE FUNDAMENTOS DE COMPUTADORES
ÁREA DE TECNOLOGÍA ELECTRÓNICAE.P.S. BURGOS
Grado en informática
2
PRÁCTICAS DE FUNDAMENTOS DE COMPUTADORES
ÁREA. TECNOLOGIA ELECTRÓNICA
E.P.S. BURGOS
Grado en informática
INTRODUCCIÓN:
En esta práctica se utilizarán Instrucciones de transferencia e Instrucciones
aritméticas del microprocesador 8085.
REGISTROS DEL 8085
REGISTRO A (ACUMULADOR).
Tiene 8 bits. Su salida está conectada a una de las
entradas a la ALU, y actuacomo uno de los
operandos en las operaciones de la misma.
REGISTROS B,C,D,E,H,L.
Estos seis registro de 8 bits se utilizan en
operaciones internas de la CPU. Pueden emparejarse
dos en dos formando registros de 16 bits: B (B-C),
D (D-E) Y M (H-L). Este último par se utiliza sobre
todo para direccionar posiciones de memoria en las
instrucciones con referencia a memoria.
CONTADOR DE PROGRAMA (PC -PROGRAM COUNTER).
Registro de 16 bits. Contiene en todo momento la
dirección de la próxima instrucción a ejecutarse.
Se incrementa de forma secuencial excepto en las
instrucciones de salto.
PUNTERO DE PILA ( SP - STACK POINTER).
Registro de 16 bits que contiene la dirección de la
cima de la pila ( zona de memoria ). La pila se
gestiona como LIFO ( Last Input, First Output ).
REGISTRO DE ESTADO.Registro de 8 bits. Se utilizan 5 de esos bits,
también llamados flags, para indicar la condición
del resultado obtenido en la ALU.
FLAG
S: En operaciones con signo indica el signo del
resultado ( 0-positivo, 1-negativo )
Z: Flag 0. Si el resultado es 0, Z=1. En caso
contrario Z=0.
AC: Acarreo auxiliar. AC=1 cuando se
acarreo en los cuatro bits de menos peso.
produce
P: Flag de paridad. Indica laparidad
resultado. P=1 paridad par, P=0 paridad impar.
del
CY: Flag de acarreo o carry. CY=1 cuando se produce
acarreo en la operación de la ALU con los bits de
mayor peso de cada operando.
3
PRÁCTICAS DE FUNDAMENTOS DE COMPUTADORES
ÁREA DE TECNOLOGÍA ELECTRÓNICA
E.P.S. BURGOS
Grado en informática
Las instrucciones de trasferencia se utilizan para mover los contenidos de la
memoria a losregistros de la UCP, de los registros de la UCP a memoria y
entre los propios registros. No están permitidas las trasferencias directas entre
dos posiciones de memoria.
Son:
MOV
MVI
LXI
LDA
STA
LHLD
SHLD
LDAX
STAX
XCHG
Las isntrucciones aritméticas son:
ADD
ADI
ADC
ACI
SUB
SUI
SBB
SBI
INR
DCR
INX
DCX
DAD
DAA
(Ver anexo)
Disponemos de la información sobre las instrucciones en las ayudas de losdistintos simuladores.
ENUNCIADO
Realizar un programa ensamblador que partiendo de dos
números de 8 bits cada uno devuelva el primer dato en la
posición 1200H, el segundo dato en 1201H, y en 1202H el
resultado de la suma ajustada en BCD.
4
PRÁCTICAS DE FUNDAMENTOS DE COMPUTADORES
ÁREA. TECNOLOGIA ELECTRÓNICA
E.P.S. BURGOS
Grado en informática
Nota:
Introducir números que no produzcandesbordamientos en hexadecimal.
2. INFORME
El informe de la práctica deberá incluir los siguientes puntos:
Listado del Programa en ensamblador.
Organigrama.
Comentarios al programa.
5
PRÁCTICAS DE FUNDAMENTOS DE COMPUTADORES
ÁREA DE TECNOLOGÍA ELECTRÓNICA
E.P.S. BURGOS
Grado en informática
ANEXOS:
Tipo de
instrucción
Lectura /
escritura
de periférico
Lectura
de memoria
Escritura
de memoriaTransferencia
de datos
Operaciones
aritméticas
Incremento
y
decremento
Salto
Instrucción
IN
OUT
puerto
puerto
LDA
LHLD
dir
dir
LDAX
MOV
POP
rp
r, M
rp
STA
SHLD
dir
dir
STAX
MOV
MVI
dato8
PUSH
rp
M, r
M,
rp
A +
A +
A +
A +
A +
A +
A BCD →
A A A A A A HL +
JMP
J
CALL
RET
C
R
RST
vector
NINGUNO
CY
Z
S
P
→ PC
=
=
=
=
BC, DE
A, B, C, D, E,
H, L
NINGUNO
2
2
3
3
1
1
1
1
1
2
1...
Regístrate para leer el documento completo.