UNIDAD:1 PASO:2
ELABORADO POR:
LUIS STIVEN PULGARIN MUÑOZ, CODIGO: 1006248296
MIGUEL ERASMO MORALES, CODIGO: 1151938915
EDWIN MEJIA CORREA, CODIGO: 9739219
TUTOR:
NESTOR JAVIER RODRIGUEZ
CODIGO CURSO:
309696_24
Introducción
Mediante el uso de software Simuproc el cual por medio del leguaje assambler nos permite la
como lo son compuertas lógicas ALU, RAM, ROM. Estos microprocesadores son un circuito
En este trabajo se encuentran una serie de ejercicios desarrollados de manera individual de los
cuales cada estudiante eligió de manera autónoma e individual, permitiendo con los avances
lograr consolidar un solo trabajo de manera colaborativa mediante la identificación de cada uno
de los aportes logrando definir el funcionamiento de cada uno de estos con conceptos propios de
Resumen
Se logra identificar el funcionamiento de un microprocesador haciendo uso del software
Simuproc el cual emplea el leguaje Assembler y mediante la solución de una serie de ejercicios
que se logran codificar permitiendo la solución de característica propia a lo que valla dirigida.
de manera individual eligiendo un solo ejercicio por estudiante, este en cargándose de presentar
su previo desarrollo por medio del simulador Simuproc y sustentado su funcionamiento mediante
la creación de un video explicando logrando demostrar los métodos que utilizo para su correcto
funcionamiento.
Objetivos
trabaja este.
Desarrollo de la actividad
Desarrollo del paso 2: El estudiante junto con el grupo de trabajo colaborativo desarrollan el
paso 2: En primera instancia el estudiante hace revisión del paso 2 solicitado e identifica los
aspectos más importantes como por ejemplo las variables que intervienen.
1). Realizar el promedio de la suma de las edades de los integrantes del grupo (ingresar los
datos de los valores por medio de teclado)
Recordemos que para calcular el promedio de las edades primero debemos realizar la
sumatoria de las edades y posteriormente a esto lo dividimos obtenido el resultado final.
Mediante intrusiones logramos desarrollar el presente ejercicio de la siguiente manera:
msg: con esta instrucción se logra solicitar o mostrar por pantalla una intrusión.
in Ax,1: con esta instrucción logramos la creación o la operación dentro del programa de
números flotantes con el fin de que sea un numero entero o decimal no lo muestre con
exactitud.
stf: con esta instrucción logramos guardar en memoria y dejar libre Ax para el ingreso de
un nuevo dato.
Addf: con esta instrucción logramos sumar.
divf: con esta instrucción logramos dividir.
out 1,Ax: con esta instrucción logramos mostrar el resultado de todas las operaciones.
hlt: con esta función logramos dar por terminado el proceso del programa.
Video Luis Stiven pulgarin Link
https://youtu.be/YOW0tR9qbQM
2. Desarrollar un programa para hallar el área de un trapezoide (ingresar los datos de los
valores por medio de teclado).
AREA DE UN TRAPEZOIDE:
el area de un trapezoide asimetrico es decir que sus lados son diferentes se realiza por medio de
la triangulacion para encontrar mas facil el area luego se suman estas areas.
Entonces los pasos a seguir son:
1. se divide en dos triángulos
https://www.universoformulas.com/matematicas/geometria/area-trapezoide/
2. se suma las áreas de los dos triángulos
https://www.universoformulas.com/matematicas/geometria/area-trapezoide/
el area es:
BD∗h ABD BD∗h BCD
AREA TRAPEZOIDE= +
2 2
BD= Es la base de los dos triangulos
h ABD = la altura del primer triangulo
h BCD= la altura del segundo triangulo
2.
pruebas:
se realiza una prueba para verificar el programa
BD=6
h ABD Y hBCD =2
3). Desarrollar un programa para hallar el área de una circunferencia (ingresar los datos de
los valores por medio de teclado).
Solución:
Para el desarrollo de este ejercicio se tiene en cuenta que el área de una circunferencia se puede
hallar mediante la fórmula:
A=r 2∗π
Teniendo en cuenta esta fórmula nos damos cuenta que la constante π tiene un valor de 3.1415
que para programación en el simulador Simuproc hace referencia a un número decimal con punto
flotante, en este orden de ideas se busca que tanto para el ingreso de la constante como la del
valor del radio (r) se puedan ingresar números decimales enteros o con punto flotante.
Asi las cosas se tiene la siguiente programacion en lenguaje de bajo nivel Assembler:
En la anterior
figura podemos
observar una serie de instrucciones utilizadas para programar el microprocesador para obtener el
resultado del área de la circunferencia explicaremos cada una de ellas.
INSTRUCCIÓN ACCIÓN
cla Permite mantener AX en cero al iniciar el
programa para evitar errores.
msg Nos permite mostrar un mensaje en el
dispositivo de salida en este caso el
monitor
in AX,1 Permite que el usuario ingrese un valor
tanto en decimal entero o con punto
flotante.
stf 01A Guarda el dato ingresado en la posición
asignada.
mulf 01A Multiplica el número guardado en la
posición 01A teniendo en cuenta que su
exponente es dos, esto quiere decir que se
multiplica por sí mismo.
out 1,AX Muestra el resultado en el dispositivo de
salida.
hlt Instrucción utilizada para dar fin al
programa.
Es de tener en cuenta que esta serie de instrucciones se utilizan para programar números
decimales con punto flotante ya que las intrusiones como: ldt, sta, stb entre otras solo admiten
números decimales enteros.
Dentro del simulador del procesador podemos observar las instrucciones de programación en la
dirección asignada y su valor, además nos permite utilizar dispositivos de entrada y de salida
como el monitor y el teclado, los valores asignados mediante el desarrollo en AX y BX y el
control de la velocidad de simulación.
El
dispositivo de salida como la pantalla nos va mostrando paso a paso las salidas o proyecciones
programadas que se van ejecutando a medida que avanza la simulación y el último dato
Una vez terminada la simulación nos aparece un cuadro de estadísticas que nos informa: el
tiempo promedio de la ejecución, las operaciones aritméticas utilizadas, instrucciones ejecutadas,
cantidad de datos de entrada y de salida.
El Conversor de datos nos permite convertir los números decimales enteros y de punto flotante
en lenguaje binario, Hexadecimal, octal, entre otros.
Si revisamos este valor con el obtenido con el simulador nos damos cuenta que es igual el
resultado con muy buena precisión incluyendo el punto fijo flotante.
4) Diseño de un programa que ordena tres números de menor a mayor, los cuales se solicitan el
ingreso por el usuario a través del teclado
Jairo zambrano
Código utilizado
#SimuProc 1.4.2.0
ldt
cmp 51
jme 60
jeq 70
cmp 52
jeq 80
cmp 53
jeq 62
hlt
; termina el proceso
#50
;numeros en binario
0
;numero 0
;numero 1
10
;numero 2
11
;numero 3
100
;numero 4
#60
jmp 0
hlt
#70
ldt
jmp 0 ;salta a la direccion a ejecutar en este caso la memoria cero osea que nos vuelve a mostrar las
opciones
#80
#90
jma 104 ; salta si los flag NyZ son cero quiere decir que el numero es menor y saltaria a la memoria 104
jme 110 ; compara con la memoria 110 y si es menor salta a la memoria 110
jeq 110 ; compara los valores y si son iguales salta al dato de la memoria 110
jma 108 ; salta si los flag NyZ son cero quiere decir que el numero es menor y saltaria a la memoria 108
#100
mov 56,57
mov 57,55
mov 55,56
mov 56,58
mov 58,55
mov 59,57
mov 57,58
mov 58,59
#110
mov bx,50
simuproc
https://youtu.be/O55APVdA7Ng
https://www.youtube.com/watch?v=O55APVdA7Ng
Conclusiones
Mediante el presente trabajo logramos comprender características que permiten
interiorizar el funcionamiento de un microprocesador internamente y su importancia que
presenta en la función de un sistema, de esta manera logrando ser de gran ayuda en
conocimientos previos que pueden ser de gran aporte para desarrollado tanto en nuestro
campo laboral como estudiantil.
Finalmente encontraremos en el desarrollo del paso 2 de la unidad 1, la programación y
simulación de los ejercicios propuestos por el tutor para esta actividad, explicando cada
una de las instrucciones utilizadas y los datos simulados en el simulador Simuproc,
además se utilizan dispositivos de entrada y de salida como lo son el teclado y la pantalla
simulada de un ordenador.
Referencias bibliográficas
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
Rocabado, S. (2009). Arquitectura y organización de la computadora: microprocesadores y
programación Assembler. Editorial de la Universidad Nacional de La Plata. (Pp. 24-66).
Recuperado de: http://bibliotecavirtual.unad.edu.co:2460/lib/unadsp/reader.action?
ppg=1&docID=4499097&tm=1527288958603
Williams, Arthur. (2009). Microprocesadores, dispositivos periféricos, optoelectrónicos y de
interfaz. Ed. McGraw-Hill. (Pp. 5-42). Recuperado de:
http://bibliotecavirtual.unad.edu.co:2460/lib/unadsp/reader.action?
ppg=31&docID=3191906&tm=1527289146227
Miranda, V. (2005). Arquitectura de equipos y sistemas informáticos. 4th ed., Paraninfo.
Recuperado de: http://bibliotecavirtual.unad.edu.co:2619/apps/pub/3BDI/GVRL?
u=unad&sid=GVRL