IU_Principal.java:
Esta clase implementará los métodos de manejo de interfaces y eventos, para visualizar las operaciones del algoritmo de Booth de una manera visualmente más atractiva.
A continuación, el detalle de lo que se usó para implementarlo.
Atributos:
- private JButton btnCalcular;
Es el botón con el cual se verifica que los datos ingresados sean correctos, y según eso, llama al algoritmo de Booth para calcular el resultado. - private JButton btnLimpiar;
Limpia los campos de texto para ingresar una nueva operación. - private JTextArea txaOperaciones;
Reporta paso a paso, las operaciones del algoritmo de Booth. - private JTextField txtMultiplicando;
Donde se ingresa el valor en base decimal del multiplicando de la operación. - private JTextField txtMultiplicandoBin;
Donde se reporta el multiplicando en binario. - private JTextField txtMultiplicador;
Donde se ingresa el valor en base decimal del multiplicador de la operación. - private JTextField txtMultiplicadorBin;
Donde se reporta el multiplicador en binario. - private JTextField txtMultiplicacion;
Donde se reporta a manera de cadena, la operación de forma: "a x b". - private JTextField txtResultado;
Donde se reporta el resultado de la operación, en base decimal. - private JTextField txtResultadoBin;
Donde se reporta el resultado de la operación en binario.
Métodos:
- IU_Principal() : constructor
Descripción: Inicializa todos los atributos, y ubicación en la interfaz de los elementos gráficos (Swing).
Entrada: Cadena que representa un número en binario.
Salida: Entero que representa el correspondiente valor en decimal. - btnCalcularActionPerformed(java.awt.event.ActionEvent evt) : void
Descripción: Convierte un número decimal, a un número binario.
Entrada: evento a manejar.
Salida: Vacío. - btnLimpiarActionPerformed(java.awt.event.ActionEvent evt) : void
Descripción: Establece los valores de los cuadros de texto en vacío, limpiándolos para realizar un nuevo cálculo, y poniendo el foco (requestFocus) en el txtMultiplicando.
Entrada: evento a manejar.
Salida: Vacío. - validarValoresEntrada() : boolean
Descripción: Verifica que los datos ingresados sean exclusivamente numéricos/enteros y no de ningún otro tipo. También verifica que (en este caso) sean menores de 256, para normalizar las cadenas de números binarios a 9 bits (8 normales + 1 bit de signo)
Entrada: Vacío.
Salida: Valor booleano, que indica si los datos ingresados son númericos/enteros, menores a 256 (verdadero) o no cumplen esas restricciones (devuelve falso). - actualizarTextArea(String cadena) : void
Descripción: Actualiza el JTextArea txaOperaciones, añadiendo (append) la cadena de entrada.
Entrada: Cadena de texto a ser reportada dentro del textArea, siendo añadida en la última línea.
Salida: Vacío.
Los campos de texto deshabilitados, son los de tipo "reporte" para que el usuario no los pueda modificar.
hola me podrias pasar todo el programa, tenemos que simular microoperaciones de la cpu usando el algoritmo de Booth el problema que tenemos es que por ser novatos en java no podemos convertir bien la cadena string a binario, si nos puedes proporcionar el código te lo agradeceremos, mi correo es jeve_totto@yahoo.es
ResponderBorrarEDGAR
ResponderBorrarhi! oye nesesito q me hagas un favor me podrias pasar el programa o el codigo para programar(ovbio en java) porfa esq lo nesesito
enviamelo a gamecirilo@yahoo.com porfa es urgente
Bueno ojala tengas algo de tiempo ya que han pasado más de 5 años desde la publicacion de este articulo y pudieras hacernos el honor de poner el link de descarga del código fuente, creo que ha estas alturas ya habrás terminado (o casi) tu carrera y nos sería de mucha utilidad a mi y a todos los que recién estamos llevando este curso poder saber como lo hiciste tu. A mi parecer ya no existe el "esto lo hice yo sólo y no lo comparto" ya que de alguna manera todos aprendemos de todos, así como tu aprendiste de la página Emezeta. Bueno espero puedas publicar un link de descarga de tu programa, muchas gracias de antemano.
ResponderBorrarSaludos cordiales.
PD: mi email es javierob.20@gmail.com
Yo estudio Ing. de Sistemas y ojala pudieras pasármelo al menos te lo agradecería.
Hola
ResponderBorrarPodrian pasarme el codigo del algortmo de booth, por favor, lo necesito. upn213@hotmail.com
no lo tendras en c++
ResponderBorrar