Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 11

 ERNESTO HERNANDEZ TORRES

 93774
 KO49

ARQUITECTURA DE COMPUTADORAS

Actividad de aprendizaje 2.
Calculadora binaria

Mtro. Juan Manuel Amezcua Ortega

011/07/18
ARQUITECTURA DE COMPUTADORAS

 Para el desarrollo de esta actividad se consultaron varias fuentes de consulta y


algunas actividades previas para codificar el programa; primero que nada se creó la clase
principal, posterior las declaraciones de variables correspondientes a los métodos y
funciones, así como las variables enteras y las que guardarían el resultado de las
operaciones y captura de datos mediante teclado.

Mediante un ciclo switch se mostró un menú de opciones donde se mostraba las


operaciones que realiza el programa; las dos primeras fueron suma y resta de números
binarios, las últimas tres realizaron operaciones lógicas con los operadores
correspondientes And Not y Or; para la primer opción se pidieron dos números enteros
desde teclado se guardaron en variables string para posterior fuera de la clase principal
donde se creó un método para realizar las operaciones y el cambio de variable a entero,
dentro de esta mismo método a las variables de captura se les asigno la base numérica 2
para indicar que es binario, posterior se mostró el resultado dentro del caso suma que es
donde se pidieron datos desde teclado.

Para el caso resta el proceso fue exactamente lo mismo solo que en lugar de
suma es resta, el método creado fuera de la clase principal es el mismo, de igual manera
mostrar resultados dentro del switch que es resta.

Para las comparaciones lógicas yo opte por comparar números y realizar las
condiciones lógicas dentro de un if, else, para la primer es un AND donde compare dos
números capturados desde teclado y si ambas sentencias son verdaderas devolvía una
respuesta verdadera en este se mostró el número mayor de ambos.

En la segunda se compararon un par de números capturados desde teclado y se


usó la sentencia lógica NOT donde muestra una comparación verdadera cuando la otra
es falsa, se usó dentro de este case un if else de igual manera; en este caso se mostró
cuál de los números es negativo.

En la tercera comparación y opción del programa es mediante un NOT donde


devuelve una comparación verdadera cuando no se cumplen ambas comparaciones en la
sentencia principal. Se capturaron dos números desde teclado mediante usuario, en este
caso se mostró como resultado el valor absoluto de los números y si ambos son iguales o
diferentes.

PANTALLAS DE CAPTURA
CODIGO FUENTE

package calculadorasumabinaria;
import java.util.Scanner;

public class Calculadorasumabinaria {

public static void main(String[] args) {

Scanner leer=new Scanner(System.in);


Scanner teclado=new Scanner(System.in);

String n1;
String n2;
int numero1;
int numero2;
int operacion;

int opcion;

System.out.print("Menu para elegir opcion a realizar por el


programa\n");
System.out.print("presione 1 para suma de numeros
binarios\n");
System.out.print("presione 2 para resta de numeros
binarios\n");
System.out.print("presione 3 para realizar la operación logica
AND \n");
System.out.print("presione 4 para realizar la operación logica
OR\n");
System.out.print("presione 5 para realizar la operación logico
NOT\n");

opcion=teclado.nextInt();

switch (opcion){

case 1:
System.out.println("Ingrese su numero en binario");//se
pide el numero en binario
n1=leer.next();//se guarda nuestro numero 1
System.out.println("Ingrese su numero binario numero
2");//aqui se pide el segundo numero
n2=leer.next();//guardara nuestro segundo numero

System.out.println("Su resultado es: "+Suma(n1,n2));

break;

case 2:

System.out.println("Ingrese su numero en binario");//se


pide el numero en binario
n1=leer.next();//se guarda nuestro numero 1
System.out.println("Ingrese su numero binario numero
2");//aqui se pide el segundo numero
n2=leer.next();//guardara nuestro segundo numero

System.out.println("Su resultado es: "+resta(n1,n2));

break;

case 3:
System.out.println("introduzca un pares de numeros para
saber cual es el mayor ");
System.out.println("introduzca el primer numero entero");
numero1=teclado.nextInt();
System.out.println("introduzca el segundo numero
entero");
numero2=teclado.nextInt();
if(numero1>0 && numero2<numero1){

System.out.println("el primer numero que introdujo es


mayor que el segundo"+numero1);

else {
System.out.println("el segundo numero que introdujo
es mayor"+numero2);
}

break;

case 4:
System.out.println("introduzca un par de numeros para
saber cual es positivo o negativo ");
System.out.println("introduzca el primer numero ");
numero1=teclado.nextInt();
System.out.println("introduzca el segundo numero
entero");
numero2=teclado.nextInt();
if(numero1>0 || numero2<0){
System.out.println("el primer numero es positivo");
}

else{
System.out.println("el segundo numero es negativo");
}

break;

case 5:
System.out.println("introduzca dos pares de numeros
para saber si son iguales en valor absoluto ");
System.out.println("introduzca el primer numero ");
numero1=teclado.nextInt();
System.out.println("introduzca el segundo numero
entero");
numero2=teclado.nextInt();
if(numero1!= numero2){
System.out.println("Los numeros no son iguales ");

}
else{
System.out.println("los numeros son iguales ");
}

break;
}

}
public static String Suma(String n1, String n2){
int a1=Integer.parseInt(n1,2);//recibe nnumeros binarios
int a2=Integer.parseInt(n2,2);//recibe el segundo numero en
binario
int c=a1+a2;//esta linea hace la operacion
String resultado=Integer.toString(c ,2);//esta linea
covierte en string y muestra los numeros binarios

return resultado;

public static String resta(String n1, String n2){


int a1=Integer.parseInt(n1,2);//recibe nnumeros binarios
int a2=Integer.parseInt(n2,2);//recibe el segundo numero en
binario
int c=a1-a2;//esta linea hace la operacion
String resultado=Integer.toString(c ,2);
return resultado;
CONCLUSION

Esta actividad en específico fue un desafío para mí ya que el programar


actividades que realiza la computadora fue algo complicado pero al mismo tiempo muy
interesante, aunque en cuestión de la programación resulto desafínate, siento que debí
implementar más funciones pero de alguna manera logre llegar al objetivo de la actividad
y simular dichas acciones de la pc.

Me parece bastante importante el saber cómo funciona y los procesos que cada
vez los realiza más rápido así que conocer, entender y saber esto me llena de satisfacción
y de más conocimiento. Siempre me gustan las actividades desafiantes y por supuesto
mientras sea para acrecentar conocimiento pues que mejor.
BIBLIOGRAFIA

Stallings, William. (2001). “Aritmética del computador” en Organización y arquitectura de


computadores. España: Prentice Hall, pp. 273-306.
Mano, Morris M. (2003). “Instrucciones de computadora” en Arquitectura de Computadoras.
México: Prentice Hall, pp. 140-160.
Stallings, William. (2001). “Repertorio de instrucciones: Características y funcionamiento” en
Organización y arquitectura de computadores. España: Prentice Hall, pp. 317-348.
https://www.youtube.com/watch?v=LV5NQQTlCOQ&t=710s

También podría gustarte