Vous êtes sur la page 1sur 9

UNIVERSIDAD NACIONAL DE SAN

ANTONIO ABAD DEL CUSCO


FACULTAD DE INGENIERÍA ELÉCTRICA, ELECTRÓNICA,
INFORMÁTICA Y MECÁNICA
ESCUELA PROFESIONAL DE INGENIERÍA ELÉCTRICA

“SIMULACIÓN DEL CONVERSOR DE


BASE NUMÉRICA EN SOFTWARE
NETBEAN-JAVA”

ALUMNO: SÁNCHEZ CÁCERES, YEFER TONY

DOCENTE: ING. ALARCÓN VALDIVIA, EDGAR Z.

SEMESTRE: 2017-1

CUSCO-PERÚ
20 DE JULIO 2017
SIMULACIÓN DEL CONVERSOR DE BASE NUMÉRICA EN “NETBEANS -
JAVA”
1. INTRODUCCIÓN
En primer lugar el sistema binario desempeña un papel muy importante en la tecnología
de los computadores u ordenadores, el sistema binario es un sistema de numeración
en el que los números se representan utilizando las cifras cero (0) y uno (1), esto en
informática tiene mucha importancia ya que las computadoras trabajan internamente
con dos niveles de voltaje lo que hace que su sistema de numeración natural sea
binario, entonces podemos decir que todas aquellas personas que se dedican a la
informática, es fundamental que tengas habilidad con este sistema de numeración.

En segundo lugar, el sistema numérico en base 8 se llama octal y utiliza los dígitos del
0 al 7, en informática a veces se utiliza el sistema de numeración octal envés del
hexadecimal, tiene las ventajas de que no requiere utilizar otros símbolos diferentes de
los dígitos. Sin embargo, para trabajar con bytes o conjuntos de ellos, asumiendo que
un byte es una palabra de 8 bits, suele ser más cómodo en el sistema hexadecimal, por
cuanto todo el byte así definido es completamente representado por dos dígitos
hexadecimales.

En tercer lugar, un gran problema con el sistema binario, es la verbosidad. Para


representar por ejemplo el valor de 20210 se requiere 8 dígitos binarios, la versión
decimal solo requiere de tres dígitos y por tanto los números se representan en forma
mucho más compacta con respecto al sistema numérico binario, desafortunadamente
las computadoras trabajan en el sistema binario y aunque es posible realizar la
conversión entre decimal y binario vemos precisamente que no es una tarea cómoda.
El sistema hexadecimal resuelve este problema, dado a que es compacto y nos
proporciona un mecanismo compacto de conversión hacia al formato binario, debido a
esto la mayoría del equipo de cómputo actual utiliza el sistema numérico hexadecimal.

Finalmente, por la primera, segunda y tercera razón realizamos nuestra aplicación para
la conversión de sistemas numéricos, el software que se utiliza es NetBeans de Java,
el cual es interactivo y fácil de programar.
2. SIMULACIÓN DEL CONVERSOR SOFTWARE EN NETBEANS-JAVA
Se expondrá a través de imágenes como se realizó el programa:

a) Aquí se presenta al programa NetBeans

Figura 1: Presentación del programa

b) Aquí podemos observar el diseño interactivo en GUI, por supuesto utilizando los
diferentes paneles, paletas, en fin, las herramientas que nos proporciona NetBeas.

c) Figura 2: Diseño en GUI


d) Aquí podemos ver una parte de nuestro código(programación) para nuestro sistema
de conversión.
Figura 3: Se muestra una parte del código de programación

e) Finalmente podemos ver como quedo nuestro conversor (aplicación) y su


funcionamiento
Figura 4: El conversor operando
3. CÓDIGO DE PROGRAMACIÓN
/*

* To change this license header, choose License Headers in Project Properties.

* To change this template file, choose Tools | Templates

* and open the template in the editor.

*/

package LogicaNegocio;

import java.math.BigInteger;

import java.util.ArrayList;

import javax.swing.JTextArea;

import javax.swing.JTextField;

/**

* @author Mipc

*/

public class Convertir {

private BigInteger numeroDecimal;//este es el que se convierte a los otros formatos

private ArrayList<BigInteger> resultadoConvertido = new ArrayList<>();

private ArrayList<BigInteger> numeroEntero ;

public Convertir() {

public void convertirFormatoBiDeOcHex(BigInteger NumeroConvertir,BigInteger


base/*2,8 ó 16*/,JTextArea im){//funcion para convertir el número ingresado a los otros
formatos

resultadoConvertido.clear();
while(NumeroConvertir.compareTo(BigInteger.ZERO)!=0){// se compara para ver si
es diferente de 0

resultadoConvertido.add(NumeroConvertir.mod(base));// dividimos el numero


entre la base y se captura el resto

NumeroConvertir = NumeroConvertir.divide(base);// dividiomos entre la base

im.setText("");

for (int i = resultadoConvertido.size()-1; i >=0; i--) {

if(base.compareTo(new BigInteger("16")) == 0){

if(resultadoConvertido.get(i).compareTo(new BigInteger("10"))==0)
im.setText(im.getText()+"A");

else if(resultadoConvertido.get(i).compareTo(new BigInteger("11"))==0)


im.setText(im.getText()+"B");

else if(resultadoConvertido.get(i).compareTo(new BigInteger("12"))==0)


im.setText(im.getText()+"C");

else if(resultadoConvertido.get(i).compareTo(new BigInteger("13"))==0)


im.setText(im.getText()+"D");

else if(resultadoConvertido.get(i).compareTo(new BigInteger("14"))==0)


im.setText(im.getText()+"E");

else if(resultadoConvertido.get(i).compareTo(new BigInteger("15"))==0)


im.setText(im.getText()+"F");

else im.setText(im.getText()+resultadoConvertido.get(i));

else im.setText(im.getText()+resultadoConvertido.get(i));

}
public void convertirAdecimal( BigInteger base/*2,8 ó 16 esta base es la que esta el
numero ingresado pot teclado para convertit */){

numeroDecimal = new BigInteger("0");

int cantiNum = numeroEntero.size();

BigInteger r;

for(int i=0;i<numeroEntero.size();i++){ //convertir numero ingresado a formato


decimal

cantiNum --;

r = base.pow(cantiNum);

numeroDecimal = numeroDecimal.add(numeroEntero.get(i).multiply(r));// se
suman

public void pasarNumeroLetraAentero(String numero){ // funcion convierte las letras


a numeros enteros

numeroEntero = new ArrayList<>();

for (int i = 0; i < numero.length(); i++) {

if(Character.isDigit(numero.charAt(i))){

numeroEntero.add(new BigInteger(""+numero.charAt(i)));// si es un numero


se convirte a bitInteger y se agrega al array

else{

if(numero.charAt(i)=='a'||numero.charAt(i)=='A') numeroEntero.add(new
BigInteger("10"));

else if(numero.charAt(i)=='b'||numero.charAt(i)=='B') numeroEntero.add(new


BigInteger("11"));
else if(numero.charAt(i)=='c'||numero.charAt(i)=='C') numeroEntero.add(new
BigInteger("12"));

else if(numero.charAt(i)=='d'||numero.charAt(i)=='D')
numeroEntero.add(new BigInteger("13"));

else if(numero.charAt(i)=='e'||numero.charAt(i)=='E') numeroEntero.add(new


BigInteger("14"));

else if(numero.charAt(i)=='f'||numero.charAt(i)=='F') numeroEntero.add(new


BigInteger("15"));

public BigInteger getNumeroDecimal() {

return numeroDecimal;

}
4. CONCLUSIONES
Como podemos observar según la imagen nuestro conversor de sistemas de
numeración (aplicación) tiene diferentes opciones interactúa tanto con números
decimales, binarios, octales y hexadecimales de manera perfecta y todo esto se realizó
gracias a los conocimientos de SISTEMAS DIGITALES que el docente ING. EDGAR
ALARCÓN VALDIVIA nos enseñó.

Figura 5: Finalmente se muestra la aplicación terminada

Vous aimerez peut-être aussi