Está en la página 1de 17

Informe Previo N1

Pregunta N1
Se tiene una lista de 3 nmeros positivos. Se requiere determinar el nmero
menor.
El resultado mostrarlo en una variable Menor (Lenguaje C) o en el registro
AL (ensamblador)

Seudocdigo:
Proceso menor_de_3_numeros
Escribir "Ingrese los nmeros a,b y c respectivamente
Leer a
Leer b
Leer c
Si a<=b Entonces
Si a<=c Entonces
Sino
Fin Si
Sino
Si b<=c Entonces
Sino
Fin Si
Fin Si
FinProceso

Diagrama de Flujo:

Cdigo en Lenguaje C

Cdigo en lenguaje ensamblador.

Resultados
Diagrama de flujo

Cdigo en lenguaje C

Cdigo en lenguaje ensamblador

Observaciones

Al usar db se pone un lmite de valor del dato de 256, por lo tanto


para nmeros mayores el programa no funcionara.

En la Programacin en C, al igual que dfd, se consider que los


nmeros pueden ser distintos o repetirse pero mas no se consider
que estos fueran negativos por lo que la comparacin solo aplicara
de manera general para nmeros positivos y enteros.

Conclusiones
Podemos concluir que la estructura de la programacin en C , se pudo
realizar en Assembler bajo la misma forma de anlisis y guindonos
del diagrama del flujo lo cual nos permiti un mejor orden a la hora
de programar.
Si bien se usaron condicionales, podemos ver como mediante
comandos como jc o ja ( desigualdades) podemos ir creando
equivalentes del comando if y asi programacin bajo una cierta
estructura

Pregunta N4
Se tiene una lista de 3 nmeros positivos. Se pide ordenar de menor a
mayor.
Seudocdigo

Proceso menor_a_mayor
Escribir "Ingrese tres nmeros:"
Leer a
Leer b
Leer c
Si a!=b && a!=c && b!=c Entonces
Si a>b Entonces
Si a>c Entonces
mayor<-a;
Si b>c Entonces
menor<-c;
medio<-b;
Sino
menor<-b;
medio<-c;
Fin Si
Fin Si
Fin Si
Si b>a Entonces
Si b>c Entonces
mayor<-b;
Si a>c Entonces
menor<-c;
medio<-a;
Sino
menor<-a;
medio<-c;
Fin Si
Fin Si
Fin Si
Si c>b Entonces
Si c>a Entonces
mayor<-c;
Si b>a Entonces
menor<-a;
medio<-b;
Sino
menor<-b;
medio<-a;
Fin Si
Fin Si
Fin Si
Escribir "Los nmeros ordenados de menor a mayor son:"
Escribir " ", menor," ",medio," ",mayor
Sino
Si a==b Entonces
Si a>c Entonces
mayor<-a;
medio<-b;
menor<-c;
Sino
mayor<-c;
medio<-b;
menor<-a;

Fin Si
Fin Si
Si a==c Entonces
Si a>b Entonces
mayor<-a;
medio<-c;
menor<-b;
Sino
mayor<-b;
medio<-c;
menor<-a;
Fin Si
Fin Si
Si c==b Entonces
Si c>a Entonces
mayor<-c;
medio<-b;
menor<-a;
Sino
mayor<-a;
medio<-b;
menor<-c;
Fin Si
Fin Si
Escribir "Los nmeros ordenados de menor a mayor son:"
Escribir " ", menor," ",medio," ",mayor
Fin Si
FinProceso

Diagrama de flujo

Cdigo en lenguaje C

Cdigo en lenguaje ensamblador

Resultados
Diagrama de flujo

Cdigo en lenguaje C

Cdigo en lenguaje ensamblador

Observaciones

Durante el desarrollo de la pregunta 4 al comenzar los nombres de las


etiquetas con nmeros estas fallaban por lo tanto es recomendable
usar etiquetas que comiencen con letras.
Al usar db se pone un lmite de valor del dato de 256, por lo tanto
para nmeros mayores el programa no funcionara.

Conclusiones
Concluimos en el laboratorio uno que el uso de instrucciones de
comparacin tiene una equivalencia de if en lenguaje C, estas
instrucciones son muy tiles pero a la vez es algo engorroso de
trabajar con ellas cuando se tiene que trabajar con varios valores ya
que se tiene que escribir mucho cdigo para un programa simple.

TAREA DE REISER ANTHONY FLORES ROCA / 1213220492

O = bit de overflow
a) 1110 +
1010
-----11000, vemos que tiene acarreo por lo tanto O= 1
a) 1110 +
1010
-----11000, vemos que tiene acarreo por lo tanto O= 1

Z= Indicador de que el resultado es 0


a) 45F 45F
----1 , vemos que el resultado es 0, por lo que Z = 1
b) AE AE
----00 ,

vemos que el resultado es 0, por lo que Z = 1

P= paridad
a) 1A0 100
--0A0 , es par por lo tanto el bit P = 1
b) A4B+
5A3
---FEE , es par por lo tanto el bit P =1
C = bit de carry
a) 1A1 +
1A1
--342 , dentro de la suma hay acarreo por lo tanto C = 1
b) 1A0 +
100
---

2A0, dentro de la suma no hay acarreo por lo tanto el bit C = 0


A = bit auxilary flag
a) 0001+
0010
------0011, como este numero no tiene bit de overflow entonces es un BCD
valido por lo que la operacin es BCD, entonces A = 1
b) 0001+
0100
------0101 , como este numero no tiene bit de overflow entonces es un
BCD valido por lo que la operacin es BCD, entonces A = 1

S= bit de signo
a) 1011 +
( -3)
1001
( -2)
-----1101
( -5) , como vemos se est trabajando con signos por
lo que el bit S = 1

b) 1011 +
( -3 )
1001
( +5)
-----1101
( -5) , como vemos se est trabajando con signos por
lo que el bit S = 1

También podría gustarte