Paso 2 - Grupo 309696 - 1
Paso 2 - Grupo 309696 - 1
Paso 2 - Grupo 309696 - 1
Paso 2
Presentado por:
Fabio Andrés Reina Carreño COD: 1073236955
Jefferson Leonardo Ariza COD:1072719380
Manuel Ignacio García COD: 11442329
Wilmer Rominguer Cortes COD:1070968240
Yerferson Danilo Salamanca COD:
Tutor
NOEL JAIRO ZAMBRANO
Grupo: 309696_1
SEPTIEMBRE 2018
TABLA DE CONTENIDO
MARCO TEÓRICO:
MICROPROCESADOR
Es un sistema integrado complejo, el cual se encarga de ejecutar los programas dentro de un
ordenador, mediante instrucciones programadas en lenguaje de bajo nivel, realizando
operaciones aritméticas y lógicas simples, tales como sumar, restar, multiplicar, dividir, las
lógicas binarias y accesos a memoria.
FUNCIONAMIENTO DE UN MICROPROCESADOR:
El microprocesador ejecuta instrucciones almacenadas como números binarios organizados
secuencialmente en la memoria principal. La ejecución de las instrucciones se puede
realizar en varias fases:
Prelectura de la instrucción desde la memoria principal.
Envío de la instrucción al decodificador
Decodificación de la instrucción, es decir, determinar qué instrucción es y por tanto
qué se debe hacer.
Lectura de operandos (si los hay).
Ejecución, lanzamiento de las máquinas de estado que llevan a cabo el
procesamiento.
Escritura de los resultados en la memoria principal o en los registros.
ARQUITECTURA:
La estructura básica de un microprocesador, cuenta con los siguientes elementos:
La Unidad Aritmética Lógica (ALU), que ejecuta todas las operaciones solicitadas.
Registros donde se almacenan temporalmente los datos. De aquí, la ALU extrae las
instrucciones sobre las operaciones específicas a realizar y sobre el segmento de la
memoria RAM donde vaciará sus resultados una vez ejecutadas las instrucciones.
Bloques de control (direcciones, datos, memoria), para comunicarse con el exterior.
Estos bloques controlan el flujo de información y el orden de ejecu-ción del
programa.
El circuito de reloj o Timer, que sincroniza la ejecución de las operaciones señaladas
en los tres puntos an-teriores.
LENGUAJE ENSAMBALDOR:
Es un lenguaje de programación de bajo nivel, que consiste en un conjunto de códigos de
operación que representan instrucciones básicas para los computadores, microprocesadores,
microcontroladores y otros circuitos integrados programables. Implementa una
representación simbólica de los códigos de máquina, como los binarios que necesarios para
programar una arquitectura de procesador.
ACTIVIDADES A DESARROLLAR
El estudiante junto con el grupo de trabajo colaborativo desarrolla los siguientes puntos,
cada uno de ellos debe tener presentación y un menú contextual donde se solicite al usuario
la selección del punto de interés, estos hacen parte del paso 2 y evidencian el uso de los
Microprocesadores, Tengan en cuenta que cada estudiante selecciona uno de estos y realiza
su desarrollo:
1. Realizar el promedio de la suma de las edades de los integrantes del grupo (Aparte
del menú, ingresar los datos de los valores por medio de teclado)
Ejercicio N° 1 desarrollado por Manuel Ignacio García Suárez.
a) Descripción de los comandos usados para la realización del ejercicio número 1.
COMANDO DESCRIPCION
MOV 17, 18; (Lee de la posición 18 de la memoria el valor que se va a mover a la posición 17)
MSG; (Mensaje en pantalla de interfaz)
LDT; (Lee un valor de teclado para luego llevarlo a ax)
STA 100; (Guarda el contenido de ax en la posición e memoria especifica)
MOV CX, 100; (Lee el valor de la posición de memoria 100)
CLA (Convierte ax igual a cero)
MSG (Comando de mensaje interfaz)
LDT (Lee un valor de teclado para luego llevarlo a ax)
ADD 017; (Suma en ax el contenido de la dirección de memoria)
STA 017; (Guarda el contenido en la dirección de memoria)
LOOP 006; (Decrece cx y salta a la siguiente posición de memoria si no es igual a cero)
DIV 100; (Divide el valor contenido en al posición de memoria 100)
MSG; (Comando de mensaje interfaz)
EAP; (Escribe en pantalla el contenido del registro en ax)
HLT; (Indica la terminación del programa)
A= A_1+A_2=20+42=62〖CM〗^2
Calcular el área del triángulo 1 lo primero mover el valor de (A) a registro x luego lon que
tiene a e x lo vamos a multiplicar por lo que hay en 020 en 020 tenemos la constante b
luego ese resultado lo vamos a dividir entre 2 por que en esta posición de memoria tengo el
número 2 en binario.
Luego obtenemos entonces el área del triángulo 1 y lo movemos a la dirección 031.
El cálculo del triángulo del área 2 se procede de la misma manera
Se mueve de la posición 021 que es donde está la constante c al registro AX luego lo que se
tiene en AX se multiplica en la dirección 022 y 022 tenemos el valor de (d) luego se
procede a realizar el producto a dividir entre 2 el resultado del número 2 luego procedemos
a sumar las áreas, sumamos el valor obtenido con lo que hay en la dirección 031
En 031 guardamos el resultado del triángulo del área 1 sumamos esas dos áreas y nos da el
área del trapezoide.
Msg ”------------------------------------------------------”
Htl
#30
0100000001001000
1111010111000010
4. Realizar un programa que ordene 3 números de menor a mayor (Aparte del menú,
ingresar los datos de los valores por medio de teclado)
#30
MOV 53,51 ;Copia el valor de la memoria 51 en la memoria 53
MOV 51,52 ;Copia el valor de la memoria 52 en la memoria 51
MOV 52,53 ;Copia el valor de la memoria 53 en la memoria 52
JMP F ;Salta a la memoria F
HLT
Enlace al video explicando la aplicación del código del ejercicio 4 en SIMUPROC
https://youtu.be/NEl_665POIA
ldt "Digite la segunda calificacion" ; esta instrucción nos permite mandar un mensaje a la
pantalla
sta 03A ;guarda el valor de AX en la posición de memoria
cmp 01A
jma 100 ; salto si la Instruccion anterior da mayor
jme 110 ; salto si la Instruccion es menor
ldt "Digite la tercera calificacion" ; esta instrucción nos permite mandar un mensaje a la
pantalla
sta 04A ;guarda el valor de AX en la posición de memoria
cmp 01A
jma 100 ; salto si la Instruccion anterior da mayor
jme 110 ; salto si la Instruccion es menor
ldt "Digite la cuarta calificacion" ; esta instrucción nos permite mandar un mensaje a la
pantalla
sta 05A ;guarda el valor de AX en la posición de memoria
cmp 01A
jma 100 ; salto si la Instruccion anterior da mayor
jme 110 ; salto si la Instruccion es menor
ldt "Digite la quinta calificacion" ; esta instrucción nos permite mandar un mensaje a
la pantalla
sta 06A ;guarda el valor de AX en la posición de memoria
cmp 01A
jma 100 ; salto si la Instruccion anterior da mayor
jme 110 ; salto si la Instruccion es menor
msg "pasaron"
LDA 02B
SUB 01B
EAP
msg "perdieron"
LDA 03B
SUB 01B
EAP
HLT ;finaliza programa
#100
LDA 02B
ADD 01B
STA 02B
#110
LDA 03B
ADD 01B
STA 03B
A través del estudio de esta unidad se han reconocido las partes y funcionamiento interno
de un Microprocesador como registros de propósito general y específico, compuertas
lógicas, ALU, RAM, ROM y otros propios de su arquitectura, mediante la programación y
uso de lenguaje de bajo nivel Assembler.
Hernández, E. (2009). Microprocesadores. Ed. El Cid Editor. (Pp. 5 -23) Recuperado de:
http://bibliotecavirtual.unad.edu.co:2460/lib/unadsp/reader.action?ppg=3&docID=3183363
&tm=1527288594447
Otras referencias.
https://sites.google.com/site/arquitecturadecomputadorass4a/home/unidad-1
https://es.wikipedia.org/wiki/Lenguaje_ensamblador
https://es.wikipedia.org/wiki/Microprocesador#Funcionamiento
https://sites.google.com/site/simuproc/instrucciones-soportadas