Está en la página 1de 14

MODULO INGENIERIA DE SOFTWARE

TRABAJO COLABORATIVO

PRIMER BLOQUE-ARQUITECTURA DEL COMPUTADOR-GRUPO 6

PRIMERA ENTREGA

PROFESOR: Silva Monsalve Alexandra Maria

INTEGRANTES DEL GRUPO:

Ermenson Leiton 1911025392

Ricardo buitrago Peña 100060230

Hector Danilo Prieto Zorro 100239497

Leonardo Bocarejo Buitrago 1511022545

Leonardo Cardoso Rodriguez 100240012

Julian Felipe Rodriguez A 1110012484

Lenny Alexander Aponte 1821020920

Cesar augusto Uribe González 1911025751

INSTITUCIÓN UNIVERSITARIA POLITÉCNICO GRANCOLOMBIANO


FACULTAD DE INGENIERÍA, DISEÑO E INNOVACIÓN
ABRIL 2021

INGENIERÍA DE SOFTWARE POLITÉCNICO GRANCOLOMBIANO


MODULO INGENIERIA DE SOFTWARE
TRABAJO COLABORATIVO

Introducción

La arquitectura del computador se define como: “la ciencia y el arte de diseñar, seleccionar

e interconectar componentes de hardware, y el de diseñar interfaces hardware/ software

para crear sistemas de cómputo que cumplan ciertas metas funcionales, de desempeño, de

consumo de energía, de costo, entre otros” (Patt, 2001). Claramente, la arquitectura del

computador no se refiere al diseño de edificios. Sin embargo, sí toma de la definición de

“arquitectura” el hecho de diseñar una estructura y la interconexión de componentes según

las especificaciones de uso esperado, en el caso de la arquitectura del computador del

dispositivo de cómputo.

Objetivo General

Aplicar los conocimientos adquiridos con el propósito de alcanzar de la mejor manera los
ejercicios planteados mediante este trabajo

INGENIERÍA DE SOFTWARE POLITÉCNICO GRANCOLOMBIANO


MODULO INGENIERIA DE SOFTWARE
TRABAJO COLABORATIVO

Objetivos Específicos

● Determinar si un número es primo o no.


● Diseñar un algoritmo de alto nivel.
● Definir qué instrucciones son requeridas y diseñar un conjunto de instrucciones (ISA).
● Se debe definir la estructura mínima de hardware para poder ejecutar las instrucciones
definidas en el conjunto de instrucciones.
● Montar la estructura de la microarquitectura de hardware sobre el simulador Logisim
● Ejecutar dos ejemplos diferentes sobre el simulador Logisim para comprobar que funcionan de
manera correcta
● Documentación de todo el diseño.

INGENIERÍA DE SOFTWARE POLITÉCNICO GRANCOLOMBIANO


MODULO INGENIERIA DE SOFTWARE
TRABAJO COLABORATIVO

INSTRUCCIONES

Para poder dar solución al problema planteado debemos tener una serie de instrucciones a seguir:

1. Como primera medida debemos saber que es un número primo,

Número primo: número que es divisible solamente por el mismo

2. Después debemos saber que es un algoritmo,

Algoritmo: es una secuencia de instrucciones que realizadas en orden ayudan a la


solución de un problema.

3. Saber que es un pseudocódigo

Pseudocódigo: es una forma de escribir los pasos que va a realizar un programa.

4. Informarnos de cuáles son los elementos de un pseudocódigo.

Elementos: variables, condiciones y ciclos

5. Se debe montar la estructura de la microarquitectura de hardware sobre el simulador


Logisim.

6. Se debe incluir la simulación (en Logisim) de al menos 2 ejemplos diferentes para


demostrar que funciona correctamente.

7.

INGENIERÍA DE SOFTWARE POLITÉCNICO GRANCOLOMBIANO


MODULO INGENIERIA DE SOFTWARE
TRABAJO COLABORATIVO

1. REPRESENTACIÓN GRÁFICA DEL ALGORITMO

INICIO

Primo (p)=verdadero, divisores(d)=2,


n=numero

SI
p = falso
n<2

NO

p=verdadero
p&&d<=n**0,5

INGENIERÍA DE SOFTWARE POLITÉCNICO GRANCOLOMBIANO


MODULO INGENIERIA DE SOFTWARE
TRABAJO COLABORATIVO

SI SI FIN
p = falso
n%d==0

NO

d = d+1

2. PSEUDOCÓDIGO

A continuación, resolvemos el problema con un pseudocódigo.

INICIO
Variables
número, divisor Entero
es Primo Lógico
Fin Variables
Es Primo < - Verdadero
Escribir “Ingrese un número”
Leer numero
divisor < - 2
Mientras (divisor <= (numero/2)
Si (número mod divisor == 0) entonces
esPrimo <- Falso
Fin Si
divisor <- divisor + 1
Fin Mientras
Si (esPrimo) Entonces
Escribir “El número es primo”
INGENIERÍA DE SOFTWARE POLITÉCNICO GRANCOLOMBIANO
MODULO INGENIERIA DE SOFTWARE
TRABAJO COLABORATIVO

Si no
Escribir “El número es primo”
Fin Si
FIN

3. CÓDIGO EN ALTO NIVEL

Ya conociendo el diagrama el siguiente paso es aplicar el código en alto nivel;

package arquitectura;
import java.util.Scanner;

public class numerosprimos {


public static void main(String[] args) {
System.out.println("Ingrese un numero:");
Scanner scan = new Scanner(System.in);
int x= scan.nextInt();
int contador = 0;
for(int i=1;i<=x;i++){
if(x%i==0){
contador ++;
}
if(contador > 2){
break;
}
}
if(contador==2){
System.out.println(x+" "+"Es primo");
}
else{
System.out.println(x+" "+"No es primo");
}
INGENIERÍA DE SOFTWARE POLITÉCNICO GRANCOLOMBIANO
MODULO INGENIERIA DE SOFTWARE
TRABAJO COLABORATIVO

}
}

4. LISTADO DE INSTRUCCIONES
b. Nombre, mnemónico, parámetros que recibe.
Definición
En la informática in mnemónico o nemónico es la palabra que sustituye o remplaza a un
código de operación (Lenguaje de Máquina), con lo cual es más fácil la programación, es de aquí
de donde se aplica el concepto de lenguaje ensamblador.
Declaramos una variable que se llama num
int num = 6;
Declaramos una variable booleana que sea primo y la iniciamos en true
bool primo = true;
Y vamos a recorrer todos los números que hay antes del número para ver si es divisible
por alguno de ellos y se va a recorrer mientras primo sea true si se convierte en false es porque el
número no es primo la variable i arranca en 2 porque el uno 1 primo pues no tiene números
divisibles

for(int i =2; i<num && primo == true; i++){

Ahora preguntamos si el número iterado en el que estamos recorriendo los números es 0


entonces significa que este número es divisible entonces no es primo

if(num % i == 0) primo==false;}
INGENIERÍA DE SOFTWARE POLITÉCNICO GRANCOLOMBIANO
MODULO INGENIERIA DE SOFTWARE
TRABAJO COLABORATIVO

y aquí preguntamos si primo es false mostramos un mensaje que diga el número no es primo

if(primo == false) printf("El número no es primo");

Pero si la variable primo es igual a true el número es primo

else printf("El número es primo");

c. Descripción de una frase indicando qué hace en términos de lo que recibe como
parámetro.

La variable prima la cual empieza en true la cual usamos para validar si el numero
ingresado es primo o no

d. Ejemplo
int num = 6;
bool primo = true;
for(int i =2; i<num && primo == true; i++){
if(num % i == 0) primo==false;}
if(primo == false) printf("El número no es primo");
else printf("El número es primo");
Resultado: El número 6 no es primo

INGENIERÍA DE SOFTWARE POLITÉCNICO GRANCOLOMBIANO


MODULO INGENIERIA DE SOFTWARE
TRABAJO COLABORATIVO

Presentación gráfica del algoritmo

A continuación se presenta el modelo del algoritmo representado en Logisim

Se debe incluir la simulación (en Logisim) de al menos 2 ejemplos diferentes para demostrar que
funciona correctamente.

Ejemplo 1

INGENIERÍA DE SOFTWARE POLITÉCNICO GRANCOLOMBIANO


MODULO INGENIERIA DE SOFTWARE
TRABAJO COLABORATIVO

Ejemplo 2

INGENIERÍA DE SOFTWARE POLITÉCNICO GRANCOLOMBIANO


MODULO INGENIERIA DE SOFTWARE
TRABAJO COLABORATIVO

INGENIERÍA DE SOFTWARE POLITÉCNICO GRANCOLOMBIANO


MODULO INGENIERIA DE SOFTWARE
TRABAJO COLABORATIVO

Instrucciones

- Se ingresa un dato de tipo numérico.

- Se lee el dato numérico ingresado anteriormente.

INGENIERÍA DE SOFTWARE POLITÉCNICO GRANCOLOMBIANO


MODULO INGENIERIA DE SOFTWARE
TRABAJO COLABORATIVO

- Los puntos anteriores se realizan en un ciclo en este caso un do-while

- Se realiza en una condición si el número ingresado es <= 0, si se cumple esta condición


se indica que se debe de ingresar un número mayor a cero y continua dentro del ciclo.

- Si el número es mayor a cero continúa el proceso saliendo del ciclo y se inicia la variable
i =2.

- En un nuevo ciclo en este caso un while se comprueba si el número ingresado tiene


algún divisor a partir de la variable i.

- Mientras se conoce el ciclo se aumenta el valor de i=i+1.

- Analizamos en una condición si el valor de la variable num = i si es el valor de la


variable primo es igual a true de lo contrario es false.

- Si el valor de la variable primo es igual a true retomamos un mensaje indicando que el


número ingresado es primo de lo contrario le indicaremos que el número no es primo.

INGENIERÍA DE SOFTWARE POLITÉCNICO GRANCOLOMBIANO

También podría gustarte