Ensambladores y decompiladores (27 de abril 2016)
-
Upload
pilar-menacho -
Category
Education
-
view
52 -
download
1
Transcript of Ensambladores y decompiladores (27 de abril 2016)
PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR
SEDE IBARRA
ESCUELA DE INGENIERÍA
Nombre: PILAR MENACHO
Fecha: 27/04/2016
Instalación de VB DECOMPILER LITE
JAVA DECOMPILER
CALCULADORA EN VB DECOMPILER LITE
VERSION 5.00
Begin VB.Form Form1
Caption = "Calculadora by marco"
ScaleMode = 1
AutoRedraw = False
FontTransparent = True
BorderStyle = 4 'Fixed ToolWindow
'Icon = n/a
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ClientLeft = 45
ClientTop = 285
ClientWidth = 3975
ClientHeight = 3195
ShowInTaskbar = 0 'False
StartUpPosition = 3 'Windows Default
Begin VB.CommandButton salir
Caption = "Salir"
Left = 2160
Top = 2520
Width = 1695
Height = 495
TabIndex = 11
End
Begin VB.CommandButton new
Caption = "Nuevo calculo"
Left = 120
Top = 2520
Width = 1695
Height = 495
TabIndex = 10
End
Begin VB.CommandButton dividir
Caption = "/"
Left = 3240
Top = 1800
Width = 615
Height = 495
TabIndex = 9
BeginProperty Font
Name = "MS Sans Serif"
Size = 13,5
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin VB.CommandButton por
Caption = "x"
Left = 2160
Top = 1800
Width = 615
Height = 495
TabIndex = 8
BeginProperty Font
Name = "MS Sans Serif"
Size = 13,5
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin VB.CommandButton restar
Caption = "-"
Left = 1200
Top = 1800
Width = 615
Height = 495
TabIndex = 7
BeginProperty Font
Name = "MS Sans Serif"
Size = 13,5
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin VB.CommandButton sumar
Caption = "+"
Left = 120
Top = 1800
Width = 615
Height = 495
TabIndex = 6
BeginProperty Font
Name = "MS Sans Serif"
Size = 13,5
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin VB.TextBox res
Left = 1680
Top = 1080
Width = 1215
Height = 405
TabIndex = 5
BeginProperty Font
Name = "MS Sans Serif"
Size = 9,75
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin VB.TextBox can2
Left = 1680
Top = 600
Width = 1215
Height = 405
TabIndex = 4
BeginProperty Font
Name = "MS Sans Serif"
Size = 9,75
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin VB.TextBox can1
Left = 1680
Top = 120
Width = 1215
Height = 405
TabIndex = 3
BeginProperty Font
Name = "MS Sans Serif"
Size = 9,75
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin VB.Label Label3
Caption = "Resultado"
Left = 240
Top = 1200
Width = 1095
Height = 255
TabIndex = 2
BeginProperty Font
Name = "MS Sans Serif"
Size = 9,75
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin VB.Label Label2
Caption = "Cantidad2"
Left = 240
Top = 720
Width = 1095
Height = 615
TabIndex = 1
BeginProperty Font
Name = "MS Sans Serif"
Size = 9,75
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin VB.Label Label1
Caption = "Cantidad1"
Left = 240
Top = 240
Width = 1215
Height = 495
TabIndex = 0
BeginProperty Font
Name = "MS Sans Serif"
Size = 9,75
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
End
Attribute VB_Name = "Form1"
CALCULADORA EN JAVA DECOMPILER
package calculadorabasica; public class CalculadoraBasica { public static void main(String[] args) { frmCalculadora micalculadora = new frmCalculadora(); micalculadora.setLocationRelativeTo(null); micalculadora.setVisible(true); } }
package calculadorabasica; import java.awt.Container; import java.awt.Dimension; import java.awt.EventQueue; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.math.BigDecimal; import java.text.DecimalFormat; import java.util.logging.Level;
import java.util.logging.Logger; import javax.swing.GroupLayout; import javax.swing.GroupLayout.Alignment; import javax.swing.GroupLayout.ParallelGroup; import javax.swing.GroupLayout.SequentialGroup; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JSeparator; import javax.swing.JTextField; import javax.swing.LayoutStyle.ComponentPlacement; import javax.swing.UIManager; import javax.swing.UIManager.LookAndFeelInfo; import javax.swing.UnsupportedLookAndFeelException; public class frmCalculadora extends JFrame { private String strAnterior = ""; private double dblValor1 = 0.0D; private double dblValor2 = 0.0D; private double dblResultado = 0.0D; private String strOperador = ""; private JButton btnAproximar; private JButton btnBorrar; private JButton btnCero; private JButton btnCinco; private JButton btnCuatro; private JButton btnDelete; private JButton btnDividir; private JButton btnDos; private JButton btnIgual; private JButton btnMultiplicar; private JButton btnNueve; private JButton btnOcho; private JButton btnPunto; private JButton btnRestar; private JButton btnSeis; private JButton btnSiete; private JButton btnSumar; private JButton btnTres; private JButton btnUno; private JSeparator jSeparator1; private JTextField txtOperacion; public frmCalculadora() { initComponents(); } private void initComponents() { this.jSeparator1 = new JSeparator(); this.btnSiete = new JButton(); this.btnOcho = new JButton(); this.btnCuatro = new JButton(); this.btnNueve = new JButton(); this.btnCinco = new JButton(); this.btnPunto = new JButton(); this.btnUno = new JButton(); this.btnTres = new JButton(); this.btnCero = new JButton();
this.btnSeis = new JButton(); this.btnDos = new JButton(); this.btnIgual = new JButton(); this.btnMultiplicar = new JButton(); this.btnRestar = new JButton(); this.btnBorrar = new JButton(); this.btnDividir = new JButton(); this.btnDelete = new JButton(); this.btnSumar = new JButton(); this.txtOperacion = new JTextField(); this.btnAproximar = new JButton(); setDefaultCloseOperation(3); setTitle("Calculadora Básica by DanielBu"); this.btnSiete.setText("7"); this.btnSiete.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnSieteActionPerformed(evt); } }); this.btnOcho.setText("8"); this.btnOcho.setMaximumSize(new Dimension(39, 35)); this.btnOcho.setName(""); this.btnOcho.setPreferredSize(new Dimension(39, 35)); this.btnOcho.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnOchoActionPerformed(evt); } }); this.btnCuatro.setText("4"); this.btnCuatro.setPreferredSize(new Dimension(39, 35)); this.btnCuatro.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnCuatroActionPerformed(evt); } }); this.btnNueve.setText("9"); this.btnNueve.setPreferredSize(new Dimension(39, 35)); this.btnNueve.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnNueveActionPerformed(evt); } }); this.btnCinco.setText("5"); this.btnCinco.setPreferredSize(new Dimension(39, 35)); this.btnCinco.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnCincoActionPerformed(evt); } });
this.btnPunto.setText("."); this.btnPunto.setPreferredSize(new Dimension(39, 35)); this.btnPunto.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnPuntoActionPerformed(evt); } }); this.btnUno.setText("1"); this.btnUno.setPreferredSize(new Dimension(39, 35)); this.btnUno.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnUnoActionPerformed(evt); } }); this.btnTres.setText("3"); this.btnTres.setName(""); this.btnTres.setPreferredSize(new Dimension(39, 35)); this.btnTres.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnTresActionPerformed(evt); } }); this.btnCero.setText("0"); this.btnCero.setPreferredSize(new Dimension(39, 35)); this.btnCero.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnCeroActionPerformed(evt); } }); this.btnSeis.setText("6"); this.btnSeis.setPreferredSize(new Dimension(39, 35)); this.btnSeis.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnSeisActionPerformed(evt); } }); this.btnDos.setText("2"); this.btnDos.setPreferredSize(new Dimension(39, 35)); this.btnDos.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnDosActionPerformed(evt); } }); this.btnIgual.setText("="); this.btnIgual.setPreferredSize(new Dimension(39, 35)); this.btnIgual.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) {
frmCalculadora.this.btnIgualActionPerformed(evt); } }); this.btnMultiplicar.setText("X"); this.btnMultiplicar.setPreferredSize(new Dimension(51, 23)); this.btnMultiplicar.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnMultiplicarActionPerformed(evt); } }); this.btnRestar.setText("-"); this.btnRestar.setPreferredSize(new Dimension(51, 23)); this.btnRestar.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnRestarActionPerformed(evt); } }); this.btnBorrar.setText("AC"); this.btnBorrar.setPreferredSize(new Dimension(51, 23)); this.btnBorrar.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnBorrarActionPerformed(evt); } }); this.btnDividir.setText("/"); this.btnDividir.setPreferredSize(new Dimension(51, 23)); this.btnDividir.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnDividirActionPerformed(evt); } }); this.btnDelete.setText("DEL"); this.btnDelete.setRequestFocusEnabled(false); this.btnDelete.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnDeleteActionPerformed(evt); } }); this.btnSumar.setText("+"); this.btnSumar.setPreferredSize(new Dimension(51, 23)); this.btnSumar.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnSumarActionPerformed(evt); } }); this.txtOperacion.setEditable(false); this.txtOperacion.setHorizontalAlignment(4); this.btnAproximar.setText("Aproximar");
this.btnAproximar.setToolTipText("Permite reducir la cantidad de decimales a un valor aproximado"); this.btnAproximar.setPreferredSize(new Dimension(51, 35)); this.btnAproximar.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { frmCalculadora.this.btnAproximarActionPerformed(evt); } }); GroupLayout layout = new GroupLayout(getContentPane()); getContentPane().setLayout(layout); pack(); } private void btnOchoActionPerformed(ActionEvent evt) { if (this.strOperador == "=") { Limpiar(); this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(""); this.txtOperacion.setText(this.strAnterior + "8"); } else { this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "8"); } } private void btnDeleteActionPerformed(ActionEvent evt) { this.txtOperacion.setText(""); } private void btnSumarActionPerformed(ActionEvent evt) { this.strOperador = "+"; this.dblValor1 += Double.parseDouble(this.txtOperacion.getText()); this.txtOperacion.setText(""); } private void btnUnoActionPerformed(ActionEvent evt) { if (this.strOperador == "=") { Limpiar(); this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(""); this.txtOperacion.setText(this.strAnterior + "1"); } else { this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "1"); } } private void btnDosActionPerformed(ActionEvent evt) {
if (this.strOperador == "=") { Limpiar(); this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(""); this.txtOperacion.setText(this.strAnterior + "2"); } else { this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "2"); } } private void btnTresActionPerformed(ActionEvent evt) { if (this.strOperador == "=") { Limpiar(); this.txtOperacion.setText(""); this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "3"); } else { this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "3"); } } private void btnCuatroActionPerformed(ActionEvent evt) { if (this.strOperador == "=") { Limpiar(); this.txtOperacion.setText(""); this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "4"); } else { this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "4"); } } private void btnCincoActionPerformed(ActionEvent evt) { if (this.strOperador == "=") { Limpiar(); this.txtOperacion.setText(""); this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "5"); } else { this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "5"); } }
private void btnSeisActionPerformed(ActionEvent evt) { if (this.strOperador == "=") { Limpiar(); this.txtOperacion.setText(""); this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "6"); } else { this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "6"); } } private void btnSieteActionPerformed(ActionEvent evt) { if (this.strOperador == "=") { Limpiar(); this.txtOperacion.setText(""); this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "7"); } else { this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "7"); } } private void btnNueveActionPerformed(ActionEvent evt) { if (this.strOperador == "=") { Limpiar(); this.txtOperacion.setText(""); this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "9"); } else { this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "9"); } } private void btnCeroActionPerformed(ActionEvent evt) { if (this.strOperador == "=") { Limpiar(); this.txtOperacion.setText(""); this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "0"); } else { this.strAnterior = this.txtOperacion.getText();
this.txtOperacion.setText(this.strAnterior + "0"); } } private void btnPuntoActionPerformed(ActionEvent evt) { if (this.strOperador == "=") { Limpiar(); this.txtOperacion.setText(""); this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "."); } else { this.strAnterior = this.txtOperacion.getText(); this.txtOperacion.setText(this.strAnterior + "."); } }
MATRIZ EN VB DECOMPILER LITE
ERSION 5.00
Begin VB.Form Form7
Caption = "Menu"
ScaleMode = 1
AutoRedraw = False
FontTransparent = True
BorderStyle = 1 'Fixed Single
Icon = "Form7.frx":0000
LinkTopic = "Form7"
MaxButton = 0 'False
MinButton = 0 'False
ClientLeft = 7125
ClientTop = 4275
ClientWidth = 3615
ClientHeight = 5820
StartUpPosition = 2 'CenterScreen
Begin VB.Image Image6
Left = 240
Top = 3120
Width = 3135
Height = 495
End
Begin VB.Image Image5
Left = 240
Top = 2640
Width = 3135
Height = 375
End
Begin VB.Image Image4
Left = 240
Top = 2040
Width = 3135
Height = 495
End
Begin VB.Image Image3
Left = 240
Top = 1440
Width = 3135
Height = 495
End
Begin VB.Image Image2
Left = 240
Top = 840
Width = 3135
Height = 495
End
Begin VB.Image Image1
Picture = "Form7.frx":57E2
Left = 0
Top = -120
Width = 3615
Height = 5970
End
Begin VB.Menu TODO
Caption = "Matrices"
Begin VB.Menu suma
Caption = "Suma,Resta,Multiplicacion"
End
Begin VB.Menu Determinantes
Caption = "Determinantes"
End
Begin VB.Menu inversa
Caption = "Inversa"
End
Begin VB.Menu Escalar
Caption = "Escalar"
End
Begin VB.Menu Traspuesta
Caption = "Traspuesta"
End
End
End
Attribute VB_Name = "Form7"
SOLITARIO EN JAVA DECOMPILER
import java.awt.Canvas; import java.awt.Color; import java.awt.Graphics; import java.awt.Image; import java.awt.Toolkit; public class Carta extends Canvas { public int palo; public int color; public int num; public boolean esReverso; private Image imgCarta; private Image imgReverso; public Carta cartaHija; public int esqX; public int esqY; public int mouseX; public int mouseY; public int enPila; public boolean arrastrandoHijas; public Carta(String paramString1, String paramString2, boolean paramBoolean, int paramInt1, int paramInt2, int paramInt3, int paramInt4, int paramInt5) { this.palo = paramInt1; this.color = paramInt2; this.num = paramInt3; this.esReverso = paramBoolean; this.imgReverso = Toolkit.getDefaultToolkit().getImage(paramString2); this.imgCarta = Toolkit.getDefaultToolkit().getImage(paramString1); this.cartaHija = null; this.esqX = paramInt4; this.esqY = paramInt5; this.arrastrandoHijas = false; } public void paint(Graphics paramGraphics) { setSize(75, 98); if (this.esReverso) { paramGraphics.drawImage(this.imgReverso, 0, 0, 75, 98, this); return; } paramGraphics.drawImage(this.imgCarta, 1, 1, 73, 96, this); paramGraphics.setColor(Color.BLACK); if (this.arrastrandoHijas) { Carta localCarta = this.cartaHija; int i = 10; while (localCarta != null) { paramGraphics.drawLine(1, i - 1, 74, i - 1); paramGraphics.drawImage(localCarta.imgCarta, 1, i, 73, 96 - i, this); localCarta = localCarta.cartaHija;
i += 10; } } paramGraphics.drawRect(0, 0, 74, 97); } public String toString() { return "" + this.num + " de " + (this.palo == 3 ? "Diamantes" : this.palo == 2 ? "Treboles" : this.palo == 1 ? "Corazones" : "Picas"); } }
import java.awt.Point; import java.util.Stack; public class Pila extends Stack<Carta> { private boolean adopta; private int modoAdopcion; private int margenSup; private int esqX; private int esqY; public Pila(int paramInt1, int paramInt2) { this.adopta = false; this.esqX = paramInt1; this.esqY = paramInt2; } public Pila(int paramInt1, int paramInt2, int paramInt3, int paramInt4) { this.adopta = true; this.modoAdopcion = paramInt1; this.margenSup = paramInt2; this.esqX = paramInt3; this.esqY = paramInt4; } public boolean adoptaCarta(Carta paramCarta) { int i = paramCarta.getLocation().x; int j = paramCarta.getLocation().y; Carta localCarta = size() <= 0 ? null : (Carta)peek(); if ((i + 75 < this.esqX) || (i > this.esqX + 75) || (j + 98 < this.esqY) || (j > this.esqY + 98 + (size() - 1) * this.margenSup) || (!this.adopta) || ((localCarta != null) && (localCarta.esReverso))) { return false; } if (this.modoAdopcion == 1) { if ((localCarta == null) && (paramCarta.num != 1)) { return false; } if ((localCarta == null) && (paramCarta.num == 1)) {
adoptaYa(paramCarta); return true; } if ((localCarta.palo != paramCarta.palo) || (localCarta.num != paramCarta.num - 1) || (paramCarta.cartaHija != null)) { return false; } adoptaYa(paramCarta); } else { if ((localCarta == null) && (paramCarta.num != 13)) { return false; } if ((localCarta == null) && (paramCarta.num == 13)) { adoptaYa(paramCarta); return true; } if ((localCarta.num != paramCarta.num + 1) || (localCarta.color == paramCarta.color)) { return false; } localCarta.cartaHija = paramCarta; adoptaYa(paramCarta); } return true; } public void adoptaYa(Carta paramCarta) { paramCarta.esqX = this.esqX; paramCarta.esqY = (this.esqY + size() * this.margenSup); push(paramCarta); if (paramCarta.cartaHija != null) { adoptaYa(paramCarta.cartaHija); } } public void sacaCarta(Carta paramCarta) { while ((size() > 0) && (pop() != paramCarta)) {} if (size() > 0) { Carta localCarta = (Carta)pop(); localCarta.cartaHija = null; push(localCarta); } } public int obtenEsqX() { return this.esqX; } public int obtenEsqY() { return this.esqY; } }