Beruflich Dokumente
Kultur Dokumente
Estudiantes
Grupo: 309696_50
Objetivo general
Objetivos específicos
#SimuProc 1.4.2.0
mov 17,18
msg "ingrese las edades de los estudiantes que se desean promediar"
ldt
sta 100;
mov cx,100;
cla;
msg"ingrese la cantidad de estudiantes que se van apromediar"
ldt;
add 017;
sta 017;
loop 006;
div 100;
msg"el promedio de edades de los estudiantes es"
eap;
hlt;
MOV [dest,orig]
Copia el valor almacenado en el origen al destino. El destino y/o origen pueden
ser registros o direcciones de memoria o combinación de estos.
MSG
Muestra un mensaje en pantalla
LDT
Lee un valor del Teclado y lo lleva al registro AX
STA [mem]
Guarde el contenido de AX en la dirección de Memoria especificada.
CLA
Hace AX = 0
ADD [mem]
Sumar:
AX = AX + el contenido de la dirección de memoria.
LOOP [mem]
Decrementa CX y salta a la Pos de memoria si CX no es cero.
DIVF [mem]
Division:
BX y AX = BX y AX / [mem]y mem+1, en CX queda el residuo de la division en entero de
16 bits
EAP
Escribe en Pantalla el contenido del registro AX
HLT
Terminar Todo Programa lleva esta instrucción para indicarle al simulador que el
Programa programa ha terminado su ejecución.
Comando en SimuProc pantallazos.
Link de grabación.
http://youtu.be/qzPAQBV1Zyc?hd=1
2. Desarrollar un programa para hallar el área de un trapezoide
(ingresar los datos de los valores por medio de teclado)
Solución por el estudiante Fredy Andrés Márquez Marin
Que es un microprocesador
Es un chip que ejecuta los programas, lleva a cabo múltiples cálculos,
comparaciones numéricas y transferencias de datos como respuesta a
peticiones de los programas almacenaos en memorias
Componentes de un microprocesador
Unidad de control
Registros
Unidades de almacenamiento de alta velocidad que permiten almacenar
la información necesaria para su procesamiento
BUS
Canales de comunicación entre todas las unidades del sistema, estas se
encuentran interconectadas, a través de ellos se transportan la
información.
Puertos de entrada y salida
Son las interfaces de conexión con los demás componentes del sistema,
se identifican mediante una dirección pudiéndose leer datos y escribir
sobre él.
Coprocesadores Matemáticos
Muy importante ya que permite hacer cálculos matemáticos con punto
flotante, esto permite acelerar la ejecución de cada uno de los
programas o subprogramas.
Lenguaje ensamblador
Para que el programa pueda interpretar las instrucciones existe el
lengua ensamblador este convierte los nombres simbólicos de las
instrucciones en código de maquina (binario).
A 1∗H 1 A ∗H 2
A= (( 2 )(
+ 2
2 ))
A=A 1+ A 2
Vamos a ejecutar el programa, ingresando los siguientes valores enteros
reales
A1=12 , H 1=8 A2=11 H 2=6
Teniendo claro cuáles son los pasos matemáticos y recordando que las
instrucciones deben de ser escritas en el programa mediante ingreso de
datos por el teclado utilizamos Simulproc, en este programa utilizaremos
lenguaje ensamblador donde podemos observar cada proceso interno de
ejecución del programa.
El software simulador trabaja con contantes y variables en binarios y las
posiciones de memorias o direcciones, en sistema numérico
hexadecimal.
Se prense pantallas y código utilizado para esta compilación, al lado de
cada argumento se encuentra debidamente explicado para que se usa
cada sentencia,
Código
#SimuProc 1.4.2.0
;Curso Microprocesadores y Microcontroladores
;Unidd 1 Paso 2 Desarrollar el software de microprocesadores
;Estudiante Fredy Andres Márquez Marin
;Codigo 1093220784
;Tutor Mauel Enrique Wagner
;Grupo 309696_50
;Ingeniería en Telecomunicaciones
;Universidad Nacional Abierta y a Distancia
; Es esta parte del diseño especificaremos el cálculo del área del triángulo 1
; Es esta parte del diseño especificaremos el cálculo del área del triángulo 2
#050
10
Pantalla 3 Simulación
Pantalla 4 Estadísticas y resumen
Archivo en el editor del software Simuproc, en cual nos hallara el area de una
circunferencia, nosotros como usuarios le damos el valor del radio de dicha
circunferencia.
Ejemplo .
Área de una circunferencia con radio 4
A=πx r 2
A=πx 4 2
A=3.1416 x 16
A=50.27
msg "Esner Camargo"
msg "Formula para hallar el área de una circunferencia = Pi * (r^2)
ldt
cmp 090
jeq 200
cmp 100
jeq 110
#110
msg "cerrar programa"
#200
msg "ingrese el valor del radio de la circunferencia"
in ax,1; se ingresa el valor de r
stf 210; guarda en 210 y 211 el valor de r
ldf 210; carga en ax y ax el número real contenido en 210 y 211
mulf 210; multiplicar r por r
stf 230; guarda en 230 y 231 el valor de la multiplicación anterior
ldf 230; carga en ax y ax el numero real contenido en 230 y 231
mulf 060; multiplica el numero pi por r^2
stf 240; guarda en 240 y 241 el valor de la multiplicación anterior
ldf 240; carga en ax y ax el numero real contenido en 240 y 241
msg "el área de la circunferencia es"
out 1, ax; muestra el resultado del valor de la circunferencia
hlt ; termina el proceso
#60
0100000001001001 ; número pi en binario
0000111111011010
#090
1
#100
10
Simuproc
Simulación
Datos ingresados: 4-7-2
Datos recibidos : 2-7-4
#020
MSG NUMERO NO INCLUIDO EN EL MENU
JMP 007
MSG FIN DEL PROGRAMA
HLT
CLA
;****************************************
#100
MSG INGRESE NOTA DEL PRIMER ESTUDIANTE
IN AX,1
STF 2A
LDA 2A
CMP 30E ; NOTA > 5
JMA 400
CMP 305 ; NOTA < 0
JME 400
CMP 30B ; NOTA >=3
JMA 500 ; NOTA > 3, VA A 500 E INCREMENTA 501
JEQ 500 ; AX = 3, VA A 500 E INCREMENTA 501
CMP 308 ; VERIFICO NOTAS <1
JME 503 ; AX < 1 VA A 504 E INCREMENTA 505
CMP 30B ; VERIFICO NOTAS < 3
JME 506 ; AX < 3 VA A 502 E INCREMETA 503
#300
0 ; 0 - 300
1 ; 1 - 301
10 ; 2 - 302
11 ; 3 - 303
101 ; 5 - 304
0000000000000000 ; 0 BINARIO 305
0000000000000000
0000000000000000
0011111110000000 ; 1 BINARIO 30B
0000000000000000
0000000000000000
0100000001000000 ; 3 BINARIO 30B
0000000000000000
0000000000000000
0100000010100000 ; 5 BINARIO 30E
0000000000000000
0000000000000000
1010 ; 10 - 311
#400
MSG NUMERO FUERRA DE RANGO
JMP 100
#410
MSG NUMERO FUERA DE RANGO
JMP 10F
#420
MSG NUMERO FUERA DE RANGO
JMP 11E
#430
MSG NUMERO FUERA DE RANGO
JMP 12D
#440
MSG NUMERO FUERA DE RANGO
JMP 13C
#450
MSG NUMERO FUERA DE RANGO
JMP 14B
#460
MSG NUMERO FUERA DE RANGO
JMP 15A
#470
MSG NUMERO FUERA DE RANGO
JMP 169
#480
MSG NUMERO FUERA DE RANGO
JMP 178
#490
MSG NUMERO FUERA DE RANGO
JMP 187
#500
INC 501
0
JMP 10F
INC 507
0
JMP 10F
INC 507
0
JMP 10F
#510
INC 501
JMP 11E
INC 504
JMP 11E
INC 507
JMP 11E
#520
INC 501
JMP 12D
INC 504
JMP 12D
INC 507
JMP 12D
#530
INC 501
JMP 13C
INC 504
JMP 13C
INC 507
JMP 13C
#540
INC 501
JMP 14B
INC 504
JMP 14B
INC 507
JMP 14B
#550
INC 501
JMP 15A
INC 504
JMP 15A
INC 507
JMP 15A
#560
INC 501
JMP 169
INC 504
JMP 169
INC 507
JMP 169
#570
INC 501
JMP 178
INC 504
JMP 178
INC 507
JMP 178
#580
INC 501
JMP 187
INC 504
JMP 187
INC 507
JMP 187
#590
INC 501
JMP 600
INC 504
JMP 600
INC 507
JMP 600
#600
LDA 501
MSG PROPABILIDAD DE APROVACION ES DE
MUL 311
EAP
MSG "%"
LDA 507
ADD 504
STA 630
MSG PROBABILIDAD DE REPROBAR ES DE
MUL 311
EAP
MSG "$"
LDA 504
MSG CANTIDAD DE NOTAS CON VALOR MENOR A UNO
EAP
LDA 501
MSG CANTIDAD DE ESTUDIANTES QUE APROBARON
EAP
LDA 630
MSG CANTIDAD DE ESTUDIANTES QUE REPROBARON
EAP
HLT
Pantalla 1 código editor 2
Pantalla 2 código editor 1
Pantalla 3 Simulación
Google de:https://sites.google.com/site/simuproc/home