SlideShare a Scribd company logo
1. DATOS INFORMATIVOS
1.1 Nombre: Gabriel Solano
1.2 Carrera: Sistemas
1.3 Nivel: 5to
1.4 Tema: Compiladores
1.5 Fecha: 21/04/2017
2. DESCRIPCION
DECOMPILADORES
Instalación Vb Decompiler lite
1) Descargar de la página Oficial el programa https://www.vb-
decompiler.org/download.htm Descomprimir y ejecutar el instalador
2) Next
3) Aceptar los términos y condiciones
4) Dar un directorio o dejarlo por defecto
5) Dar click en Next hasta elegir el Idioma, el cual pondremos Español
6) Click en Install
7) Dejar activada la casilla de Launch VB Decompiler si necesitas utilizarlo.
8) Interfaz
PROGRAMAS A DECOMPILAR
CALCULADORA
CODIGO FUENTE CALCULADORA
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
CommandButton salir Caption = "Salir" Left = 2160 Top = 2520 Width = 1695 Height = 495
TabIndex = 11 End Begin CommandButton new Caption = "Nuevo calculo" Left = 120 Top =
2520 Width = 1695 Height = 495 TabIndex = 10 End Begin 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 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 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 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 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 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 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 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 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 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"
MATRIZ NXM
CODIGO FUENTE MATRIZ
Begin VB.Form Form2
Caption = "Determinante 3*3 y 2*2"
ScaleMode = 1
AutoRedraw = False
FontTransparent = True
Picture = "Form2.frx":0
BorderStyle = 1 'Fixed Single
Icon = "Form2.frx":B179
LinkTopic = "Form2"
MaxButton = 0 'False
MinButton = 0 'False
ClientLeft = 5415
ClientTop = 3330
ClientWidth = 8805
ClientHeight = 4575
StartUpPosition = 2 'CenterScreen
Begin TextBox e5
Left = 5400
Top = 3840
Width = 735
Height = 375
Enabled = 0 'False
TabIndex = 17
End
Begin TextBox e1
Left = 3720
Top = 3360
Width = 495
Height = 375
TabIndex = 16
End
Begin TextBox e2
Left = 4320
Top = 3360
Width = 495
Height = 375
TabIndex = 15
End
Instalación Java Decompiler
1) Descargar programa con crack y ejecutar el instalador
2) Escoger el Idioma del paquete de instalación y click en Next.
3) Aceptar términos y Condiciones
4) Dar next hasta la ruta, cambiarlo en caso de ser necesario, caso contrario dejar
en default
5) Descarmcar la casilla de intalacion de Firefox Downloader y next
6) Click en Install
7) Interfaz del programa
PROGRAMAS A DESCOMPILAR
VARIABLES PARA UNA DERIVADA
CODIGO FUENTE VARIABLE
package org.nfunk.jep;
import java.util.Observable;
public class Variable
extends Observable
{
protected String name;
private Object value;
private boolean isConstant = false;
private boolean validValue = false;
protected Variable(String paramString)
{
this.name = paramString;
this.value = null;
this.validValue = false;
}
protected Variable(String paramString, Object paramObject)
{
this.name = paramString;
this.value = paramObject;
this.validValue = (paramObject != null);
}
public String getName()
{
return this.name;
}
public boolean isConstant()
{
return this.isConstant;
}
public void setIsConstant(boolean paramBoolean)
{
this.isConstant = paramBoolean;
}
public Object getValue()
{
return this.value;
}
public boolean hasValidValue()
{
return this.validValue;
}
public void setValidValue(boolean paramBoolean)
{
if (isConstant()) {
return;
}
this.validValue = paramBoolean;
}
public boolean setValue(Object paramObject)
{
if (!setValueRaw(paramObject)) {
return false;
}
setChanged();
notifyObservers(paramObject);
return true;
}
protected boolean setValueRaw(Object paramObject)
{
if (this.isConstant) {
return false;
}
this.validValue = true;
this.value = paramObject;
return true;
}
public String toString()
{
if ((!this.validValue) || (this.value == null)) {
return this.name + ": null";
}
if (this.isConstant) {
return this.name + ": " + this.value.toString() + " (Constant)";
}
return this.name + ": " + this.value.toString();
}
}
MATRIZ
CODIGO FUENTE MATRIZ
public class MatrixEvaluator
implements ParserVisitor, EvaluatorI
{
private Stack stack = new Stack();
private MatrixJep mjep;
public MatrixValueI evaluate(MatrixNodeI paramMatrixNodeI, MatrixJep paramMatrixJep)
throws ParseException
{
this.mjep = paramMatrixJep;
return (MatrixValueI)paramMatrixNodeI.jjtAccept(this, null);
}
public Object eval(Node paramNode)
throws ParseException
{
MatrixValueI localMatrixValueI = (MatrixValueI)paramNode.jjtAccept(this, null);
return localMatrixValueI.copy();
}
public Object visit(SimpleNode paramSimpleNode, Object paramObject)
{
return null;
}
public Object visit(ASTStart paramASTStart, Object paramObject)
{
return null;
}
public Object visit(ASTConstant paramASTConstant, Object paramObject)
{
return ((ASTMConstant)paramASTConstant).getMValue();
}
public Object visit(ASTVarNode paramASTVarNode, Object paramObject)
throws ParseException
{
MatrixVariableI localMatrixVariableI = (MatrixVariableI)paramASTVarNode.getVar();
if (localMatrixVariableI.hasValidValue()) {
return localMatrixVariableI.getMValue();
}
if (!localMatrixVariableI.hasEquation()) {
throw new ParseException("Tried to evaluate a variable with an invalid value but no equation");
}
MatrixValueI localMatrixValueI = (MatrixValueI)localMatrixVariableI.getEquation().jjtAccept(this,
paramObject);
localMatrixVariableI.setMValue(localMatrixValueI);
return localMatrixValueI;
}
public Object visit(ASTFunNode paramASTFunNode, Object paramObject)
throws ParseException
{
MatrixNodeI localMatrixNodeI = (MatrixNodeI)paramASTFunNode;
PostfixMathCommandI localPostfixMathCommandI = paramASTFunNode.getPFMC();
Object localObject1;
if ((localPostfixMathCommandI instanceof MatrixSpecialEvaluationI))
{
localObject1 = (MatrixSpecialEvaluationI)localPostfixMathCommandI;
return ((MatrixSpecialEvaluationI)localObject1).evaluate(localMatrixNodeI, this, this.mjep);
}
if ((localPostfixMathCommandI instanceof CallbackEvaluationI))
{
localObject1 = ((CallbackEvaluationI)localPostfixMathCommandI).evaluate(paramASTFunNode, this);
if ((localObject1 instanceof MatrixValueI)) {
localMatrixNodeI.getMValue().setEles((MatrixValueI)localObject1);
} else {
localMatrixNodeI.getMValue().setEle(0, localObject1);
}
return localMatrixNodeI.getMValue();
}
if ((localPostfixMathCommandI instanceof SpecialEvaluationI)) {
throw new ParseException("Encountered an instance of SpecialEvaluationI");
}
Object localObject2;
if ((localPostfixMathCommandI instanceof BinaryOperatorI))
{
localObject1 = (BinaryOperatorI)localPostfixMathCommandI;
localObject2 = (MatrixValueI)paramASTFunNode.jjtGetChild(0).jjtAccept(this, paramObject);
MatrixValueI localMatrixValueI1 = (MatrixValueI)paramASTFunNode.jjtGetChild(1).jjtAccept(this,
paramObject);
return ((BinaryOperatorI)localObject1).calcValue(localMatrixNodeI.getMValue(),
(MatrixValueI)localObject2, localMatrixValueI1);
}
if ((localPostfixMathCommandI instanceof UnaryOperatorI))
{
localObject1 = (UnaryOperatorI)localPostfixMathCommandI;
localObject2 = (MatrixValueI)paramASTFunNode.jjtGetChild(0).jjtAccept(this, paramObject);
return ((UnaryOperatorI)localObject1).calcValue(localMatrixNodeI.getMValue(),
(MatrixValueI)localObject2);
}
if ((localPostfixMathCommandI instanceof NaryOperatorI))
{
localObject1 = (NaryOperatorI)localPostfixMathCommandI;
localObject2 = new MatrixValueI[paramASTFunNode.jjtGetNumChildren()];
for (int k = 0; k < localObject2.length; k++) {
localObject2[k] = ((MatrixValueI)paramASTFunNode.jjtGetChild(k).jjtAccept(this, paramObject));
}
return ((NaryOperatorI)localObject1).calcValue(localMatrixNodeI.getMValue(),
(MatrixValueI[])localObject2);
}
if ((localPostfixMathCommandI instanceof Comparative))
{
localObject1 = (MatrixValueI)paramASTFunNode.jjtGetChild(0).jjtAccept(this, paramObject);
localObject2 = (MatrixValueI)paramASTFunNode.jjtGetChild(1).jjtAccept(this, paramObject);
this.stack.push(localObject1);
this.stack.push(localObject2);
localPostfixMathCommandI.setCurNumberOfParameters(2);
localPostfixMathCommandI.run(this.stack);
localMatrixNodeI.getMValue().setEle(0, this.stack.pop());
return localMatrixNodeI.getMValue();
}
int i = paramASTFunNode.jjtGetNumChildren();
for (int j = 0; j < i; j++)
{
MatrixValueI localMatrixValueI2 = (MatrixValueI)paramASTFunNode.jjtGetChild(j).jjtAccept(this,
paramObject);
if (!localMatrixValueI2.getDim().equals(Dimensions.ONE)) {
throw new ParseException("Arguments of " + paramASTFunNode.getName() + " must be scalers");
}
this.stack.push(localMatrixValueI2.getEle(0));
}
localPostfixMathCommandI.setCurNumberOfParameters(i);
localPostfixMathCommandI.run(this.stack);
localMatrixNodeI.getMValue().setEle(0, this.stack.pop());
return localMatrixNodeI.getMValue();
}
}

More Related Content

Similar to Decompiladores

Decompiladores
DecompiladoresDecompiladores
Decompiladores
reivax2091
 
Compiladores
CompiladoresCompiladores
Compiladores
Santiago Guzmán
 
DECOMPILADORES
DECOMPILADORESDECOMPILADORES
DECOMPILADORES
Steven Tabango
 
Ensambladores y decompiladores (27 de abril 2016)
Ensambladores y decompiladores (27 de abril 2016)Ensambladores y decompiladores (27 de abril 2016)
Ensambladores y decompiladores (27 de abril 2016)
pilar menacho
 
Investigación Ensambladores y Decompiladores
Investigación Ensambladores y DecompiladoresInvestigación Ensambladores y Decompiladores
Investigación Ensambladores y Decompiladores
Alexa Chisaguano
 
Poliza de vehiculo
Poliza de vehiculo Poliza de vehiculo
Poliza de vehiculo
Jhoan Manuel
 
Programas decompiladores
Programas decompiladoresProgramas decompiladores
Programas decompiladores
Zulay Limaico
 
Poliza de vehiculo
Poliza de vehiculoPoliza de vehiculo
Poliza de vehiculo
Jhoan Manuel
 
Decompilador
DecompiladorDecompilador
Decompilador
Carlos Brusil
 
Text Editor By Harsh Mathur.
Text Editor By Harsh Mathur.Text Editor By Harsh Mathur.
Text Editor By Harsh Mathur.
Harsh Mathur
 
WP7 HUB_Diseño del interfaz con Silverlight
WP7 HUB_Diseño del interfaz con SilverlightWP7 HUB_Diseño del interfaz con Silverlight
WP7 HUB_Diseño del interfaz con Silverlight
MICTT Palma
 
Reason - introduction to language and its ecosystem | Łukasz Strączyński
Reason - introduction to language and its ecosystem | Łukasz StrączyńskiReason - introduction to language and its ecosystem | Łukasz Strączyński
Reason - introduction to language and its ecosystem | Łukasz Strączyński
Grand Parade Poland
 
bbyopenApp_Code.DS_StorebbyopenApp_CodeVBCodeGoogleMaps.docx
bbyopenApp_Code.DS_StorebbyopenApp_CodeVBCodeGoogleMaps.docxbbyopenApp_Code.DS_StorebbyopenApp_CodeVBCodeGoogleMaps.docx
bbyopenApp_Code.DS_StorebbyopenApp_CodeVBCodeGoogleMaps.docx
ikirkton
 
Perkenalan ReasonML
Perkenalan ReasonMLPerkenalan ReasonML
Perkenalan ReasonML
Riza Fahmi
 
Introduction to ReasonML
Introduction to ReasonMLIntroduction to ReasonML
Introduction to ReasonML
Riza Fahmi
 
Ensure code quality with vs2012
Ensure code quality with vs2012Ensure code quality with vs2012
Ensure code quality with vs2012
Sandeep Joshi
 
Vb decompilador
Vb decompiladorVb decompilador
Vb decompilador
Andres Pozo
 
please code in c#- please note that im a complete beginner- northwind.docx
please code in c#- please note that im a complete beginner-  northwind.docxplease code in c#- please note that im a complete beginner-  northwind.docx
please code in c#- please note that im a complete beginner- northwind.docx
AustinaGRPaigey
 
Micro app-framework - NodeLive Boston
Micro app-framework - NodeLive BostonMicro app-framework - NodeLive Boston
Micro app-framework - NodeLive Boston
Michael Dawson
 

Similar to Decompiladores (20)

Decompiladores
DecompiladoresDecompiladores
Decompiladores
 
Compiladores
CompiladoresCompiladores
Compiladores
 
DECOMPILADORES
DECOMPILADORESDECOMPILADORES
DECOMPILADORES
 
Ensambladores y decompiladores (27 de abril 2016)
Ensambladores y decompiladores (27 de abril 2016)Ensambladores y decompiladores (27 de abril 2016)
Ensambladores y decompiladores (27 de abril 2016)
 
Investigación Ensambladores y Decompiladores
Investigación Ensambladores y DecompiladoresInvestigación Ensambladores y Decompiladores
Investigación Ensambladores y Decompiladores
 
Poliza de vehiculo
Poliza de vehiculo Poliza de vehiculo
Poliza de vehiculo
 
Programas decompiladores
Programas decompiladoresProgramas decompiladores
Programas decompiladores
 
Poliza de vehiculo
Poliza de vehiculoPoliza de vehiculo
Poliza de vehiculo
 
Decompilador
DecompiladorDecompilador
Decompilador
 
Text Editor By Harsh Mathur.
Text Editor By Harsh Mathur.Text Editor By Harsh Mathur.
Text Editor By Harsh Mathur.
 
WP7 HUB_Diseño del interfaz con Silverlight
WP7 HUB_Diseño del interfaz con SilverlightWP7 HUB_Diseño del interfaz con Silverlight
WP7 HUB_Diseño del interfaz con Silverlight
 
Reason - introduction to language and its ecosystem | Łukasz Strączyński
Reason - introduction to language and its ecosystem | Łukasz StrączyńskiReason - introduction to language and its ecosystem | Łukasz Strączyński
Reason - introduction to language and its ecosystem | Łukasz Strączyński
 
bbyopenApp_Code.DS_StorebbyopenApp_CodeVBCodeGoogleMaps.docx
bbyopenApp_Code.DS_StorebbyopenApp_CodeVBCodeGoogleMaps.docxbbyopenApp_Code.DS_StorebbyopenApp_CodeVBCodeGoogleMaps.docx
bbyopenApp_Code.DS_StorebbyopenApp_CodeVBCodeGoogleMaps.docx
 
Perkenalan ReasonML
Perkenalan ReasonMLPerkenalan ReasonML
Perkenalan ReasonML
 
Introduction to ReasonML
Introduction to ReasonMLIntroduction to ReasonML
Introduction to ReasonML
 
Ensure code quality with vs2012
Ensure code quality with vs2012Ensure code quality with vs2012
Ensure code quality with vs2012
 
Vb decompilador
Vb decompiladorVb decompilador
Vb decompilador
 
please code in c#- please note that im a complete beginner- northwind.docx
please code in c#- please note that im a complete beginner-  northwind.docxplease code in c#- please note that im a complete beginner-  northwind.docx
please code in c#- please note that im a complete beginner- northwind.docx
 
Presentation1
Presentation1Presentation1
Presentation1
 
Micro app-framework - NodeLive Boston
Micro app-framework - NodeLive BostonMicro app-framework - NodeLive Boston
Micro app-framework - NodeLive Boston
 

More from Gabriel Solano

Pontificia universidad católica del ecuador sistemas complejos
Pontificia universidad católica del ecuador sistemas complejosPontificia universidad católica del ecuador sistemas complejos
Pontificia universidad católica del ecuador sistemas complejos
Gabriel Solano
 
Pontificia universidad católica del ecuador algoritmo huffman
Pontificia universidad católica del ecuador algoritmo huffmanPontificia universidad católica del ecuador algoritmo huffman
Pontificia universidad católica del ecuador algoritmo huffman
Gabriel Solano
 
Pontificia universidad católica del ecuador calculo de la entropía
Pontificia universidad católica del ecuador calculo de la entropíaPontificia universidad católica del ecuador calculo de la entropía
Pontificia universidad católica del ecuador calculo de la entropía
Gabriel Solano
 
Pontificia universidad católica del ecuador ley de la entropia
Pontificia universidad católica del ecuador ley de la entropiaPontificia universidad católica del ecuador ley de la entropia
Pontificia universidad católica del ecuador ley de la entropia
Gabriel Solano
 
Pontificia universidad católica del ecuador tutorial de vegas
Pontificia universidad católica del ecuador tutorial de vegasPontificia universidad católica del ecuador tutorial de vegas
Pontificia universidad católica del ecuador tutorial de vegas
Gabriel Solano
 
Pontificia universidad católica del ecuador virtualizacion
Pontificia universidad católica del ecuador virtualizacionPontificia universidad católica del ecuador virtualizacion
Pontificia universidad católica del ecuador virtualizacion
Gabriel Solano
 
Pontificia universidad católica del ecuador entropia y neguentropia
Pontificia universidad católica del ecuador entropia y neguentropiaPontificia universidad católica del ecuador entropia y neguentropia
Pontificia universidad católica del ecuador entropia y neguentropia
Gabriel Solano
 
Pontificia universidad católica del ecuador segmentacion
Pontificia universidad católica del ecuador segmentacionPontificia universidad católica del ecuador segmentacion
Pontificia universidad católica del ecuador segmentacion
Gabriel Solano
 
Pontificia universidad católica del ecuador ingenieria en sistemas
Pontificia universidad católica del ecuador ingenieria en sistemasPontificia universidad católica del ecuador ingenieria en sistemas
Pontificia universidad católica del ecuador ingenieria en sistemas
Gabriel Solano
 
Pontificia universidad católica del ecuador matlab operadores morfológicos
Pontificia universidad católica del ecuador matlab operadores morfológicosPontificia universidad católica del ecuador matlab operadores morfológicos
Pontificia universidad católica del ecuador matlab operadores morfológicos
Gabriel Solano
 
Pontificia universidad católica del ecuador teoria de juegos ejercicios
Pontificia universidad católica del ecuador teoria de juegos ejerciciosPontificia universidad católica del ecuador teoria de juegos ejercicios
Pontificia universidad católica del ecuador teoria de juegos ejercicios
Gabriel Solano
 
Pontificia universidad católica del ecuador filtrado y realzado
Pontificia universidad católica del ecuador filtrado y realzadoPontificia universidad católica del ecuador filtrado y realzado
Pontificia universidad católica del ecuador filtrado y realzado
Gabriel Solano
 
Pontificia universidad católica del ecuador matlab imagenes
Pontificia universidad católica del ecuador matlab imagenesPontificia universidad católica del ecuador matlab imagenes
Pontificia universidad católica del ecuador matlab imagenes
Gabriel Solano
 
Pontificia universidad católica del ecuador toma de decisiones
Pontificia universidad católica del ecuador toma de decisionesPontificia universidad católica del ecuador toma de decisiones
Pontificia universidad católica del ecuador toma de decisiones
Gabriel Solano
 
Pontificia universidad católica del ecuador teoria de juegos
Pontificia universidad católica del ecuador teoria de juegosPontificia universidad católica del ecuador teoria de juegos
Pontificia universidad católica del ecuador teoria de juegos
Gabriel Solano
 
Pontificia universidad católica del ecuador matlab 2
Pontificia universidad católica del ecuador matlab 2Pontificia universidad católica del ecuador matlab 2
Pontificia universidad católica del ecuador matlab 2
Gabriel Solano
 
Matrices manual
Matrices manualMatrices manual
Matrices manual
Gabriel Solano
 
Pontificia universidad católica del ecuador trabajo autonomo
Pontificia universidad católica del ecuador trabajo autonomoPontificia universidad católica del ecuador trabajo autonomo
Pontificia universidad católica del ecuador trabajo autonomo
Gabriel Solano
 
Pontificia universidad católica del ecuador matlab
Pontificia universidad católica del ecuador matlabPontificia universidad católica del ecuador matlab
Pontificia universidad católica del ecuador matlab
Gabriel Solano
 
Pontificia universidad católica del ecuador manual matlab
Pontificia universidad católica del ecuador manual matlabPontificia universidad católica del ecuador manual matlab
Pontificia universidad católica del ecuador manual matlab
Gabriel Solano
 

More from Gabriel Solano (20)

Pontificia universidad católica del ecuador sistemas complejos
Pontificia universidad católica del ecuador sistemas complejosPontificia universidad católica del ecuador sistemas complejos
Pontificia universidad católica del ecuador sistemas complejos
 
Pontificia universidad católica del ecuador algoritmo huffman
Pontificia universidad católica del ecuador algoritmo huffmanPontificia universidad católica del ecuador algoritmo huffman
Pontificia universidad católica del ecuador algoritmo huffman
 
Pontificia universidad católica del ecuador calculo de la entropía
Pontificia universidad católica del ecuador calculo de la entropíaPontificia universidad católica del ecuador calculo de la entropía
Pontificia universidad católica del ecuador calculo de la entropía
 
Pontificia universidad católica del ecuador ley de la entropia
Pontificia universidad católica del ecuador ley de la entropiaPontificia universidad católica del ecuador ley de la entropia
Pontificia universidad católica del ecuador ley de la entropia
 
Pontificia universidad católica del ecuador tutorial de vegas
Pontificia universidad católica del ecuador tutorial de vegasPontificia universidad católica del ecuador tutorial de vegas
Pontificia universidad católica del ecuador tutorial de vegas
 
Pontificia universidad católica del ecuador virtualizacion
Pontificia universidad católica del ecuador virtualizacionPontificia universidad católica del ecuador virtualizacion
Pontificia universidad católica del ecuador virtualizacion
 
Pontificia universidad católica del ecuador entropia y neguentropia
Pontificia universidad católica del ecuador entropia y neguentropiaPontificia universidad católica del ecuador entropia y neguentropia
Pontificia universidad católica del ecuador entropia y neguentropia
 
Pontificia universidad católica del ecuador segmentacion
Pontificia universidad católica del ecuador segmentacionPontificia universidad católica del ecuador segmentacion
Pontificia universidad católica del ecuador segmentacion
 
Pontificia universidad católica del ecuador ingenieria en sistemas
Pontificia universidad católica del ecuador ingenieria en sistemasPontificia universidad católica del ecuador ingenieria en sistemas
Pontificia universidad católica del ecuador ingenieria en sistemas
 
Pontificia universidad católica del ecuador matlab operadores morfológicos
Pontificia universidad católica del ecuador matlab operadores morfológicosPontificia universidad católica del ecuador matlab operadores morfológicos
Pontificia universidad católica del ecuador matlab operadores morfológicos
 
Pontificia universidad católica del ecuador teoria de juegos ejercicios
Pontificia universidad católica del ecuador teoria de juegos ejerciciosPontificia universidad católica del ecuador teoria de juegos ejercicios
Pontificia universidad católica del ecuador teoria de juegos ejercicios
 
Pontificia universidad católica del ecuador filtrado y realzado
Pontificia universidad católica del ecuador filtrado y realzadoPontificia universidad católica del ecuador filtrado y realzado
Pontificia universidad católica del ecuador filtrado y realzado
 
Pontificia universidad católica del ecuador matlab imagenes
Pontificia universidad católica del ecuador matlab imagenesPontificia universidad católica del ecuador matlab imagenes
Pontificia universidad católica del ecuador matlab imagenes
 
Pontificia universidad católica del ecuador toma de decisiones
Pontificia universidad católica del ecuador toma de decisionesPontificia universidad católica del ecuador toma de decisiones
Pontificia universidad católica del ecuador toma de decisiones
 
Pontificia universidad católica del ecuador teoria de juegos
Pontificia universidad católica del ecuador teoria de juegosPontificia universidad católica del ecuador teoria de juegos
Pontificia universidad católica del ecuador teoria de juegos
 
Pontificia universidad católica del ecuador matlab 2
Pontificia universidad católica del ecuador matlab 2Pontificia universidad católica del ecuador matlab 2
Pontificia universidad católica del ecuador matlab 2
 
Matrices manual
Matrices manualMatrices manual
Matrices manual
 
Pontificia universidad católica del ecuador trabajo autonomo
Pontificia universidad católica del ecuador trabajo autonomoPontificia universidad católica del ecuador trabajo autonomo
Pontificia universidad católica del ecuador trabajo autonomo
 
Pontificia universidad católica del ecuador matlab
Pontificia universidad católica del ecuador matlabPontificia universidad católica del ecuador matlab
Pontificia universidad católica del ecuador matlab
 
Pontificia universidad católica del ecuador manual matlab
Pontificia universidad católica del ecuador manual matlabPontificia universidad católica del ecuador manual matlab
Pontificia universidad católica del ecuador manual matlab
 

Recently uploaded

English lab ppt no titlespecENG PPTt.pdf
English lab ppt no titlespecENG PPTt.pdfEnglish lab ppt no titlespecENG PPTt.pdf
English lab ppt no titlespecENG PPTt.pdf
BrazilAccount1
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
ankuprajapati0525
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
obonagu
 
space technology lecture notes on satellite
space technology lecture notes on satellitespace technology lecture notes on satellite
space technology lecture notes on satellite
ongomchris
 
ML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptxML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptx
Vijay Dialani, PhD
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Dr.Costas Sachpazis
 
Fundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptxFundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptx
manasideore6
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
AJAYKUMARPUND1
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
Pipe Restoration Solutions
 
MCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdfMCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdf
Osamah Alsalih
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Sreedhar Chowdam
 
weather web application report.pdf
weather web application report.pdfweather web application report.pdf
weather web application report.pdf
Pratik Pawar
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
seandesed
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
Divya Somashekar
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
gdsczhcet
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
Amil Baba Dawood bangali
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
fxintegritypublishin
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
VENKATESHvenky89705
 
ethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.pptethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.ppt
Jayaprasanna4
 
Railway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdfRailway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdf
TeeVichai
 

Recently uploaded (20)

English lab ppt no titlespecENG PPTt.pdf
English lab ppt no titlespecENG PPTt.pdfEnglish lab ppt no titlespecENG PPTt.pdf
English lab ppt no titlespecENG PPTt.pdf
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
 
space technology lecture notes on satellite
space technology lecture notes on satellitespace technology lecture notes on satellite
space technology lecture notes on satellite
 
ML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptxML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptx
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
 
Fundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptxFundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptx
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
 
MCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdfMCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdf
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
 
weather web application report.pdf
weather web application report.pdfweather web application report.pdf
weather web application report.pdf
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
 
ethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.pptethical hacking-mobile hacking methods.ppt
ethical hacking-mobile hacking methods.ppt
 
Railway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdfRailway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdf
 

Decompiladores

  • 1. 1. DATOS INFORMATIVOS 1.1 Nombre: Gabriel Solano 1.2 Carrera: Sistemas 1.3 Nivel: 5to 1.4 Tema: Compiladores 1.5 Fecha: 21/04/2017 2. DESCRIPCION DECOMPILADORES Instalación Vb Decompiler lite 1) Descargar de la página Oficial el programa https://www.vb- decompiler.org/download.htm Descomprimir y ejecutar el instalador
  • 2. 2) Next 3) Aceptar los términos y condiciones
  • 3. 4) Dar un directorio o dejarlo por defecto 5) Dar click en Next hasta elegir el Idioma, el cual pondremos Español
  • 4. 6) Click en Install 7) Dejar activada la casilla de Launch VB Decompiler si necesitas utilizarlo.
  • 5. 8) Interfaz PROGRAMAS A DECOMPILAR CALCULADORA
  • 6. CODIGO FUENTE CALCULADORA 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 CommandButton salir Caption = "Salir" Left = 2160 Top = 2520 Width = 1695 Height = 495 TabIndex = 11 End Begin CommandButton new Caption = "Nuevo calculo" Left = 120 Top = 2520 Width = 1695 Height = 495 TabIndex = 10 End Begin 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 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 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 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 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 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
  • 7. 'False EndProperty End Begin 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 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 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 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" MATRIZ NXM CODIGO FUENTE MATRIZ
  • 8. Begin VB.Form Form2 Caption = "Determinante 3*3 y 2*2" ScaleMode = 1 AutoRedraw = False FontTransparent = True Picture = "Form2.frx":0 BorderStyle = 1 'Fixed Single Icon = "Form2.frx":B179 LinkTopic = "Form2" MaxButton = 0 'False MinButton = 0 'False ClientLeft = 5415 ClientTop = 3330 ClientWidth = 8805 ClientHeight = 4575 StartUpPosition = 2 'CenterScreen Begin TextBox e5 Left = 5400 Top = 3840 Width = 735 Height = 375 Enabled = 0 'False TabIndex = 17 End Begin TextBox e1 Left = 3720 Top = 3360 Width = 495 Height = 375 TabIndex = 16 End
  • 9. Begin TextBox e2 Left = 4320 Top = 3360 Width = 495 Height = 375 TabIndex = 15 End Instalación Java Decompiler 1) Descargar programa con crack y ejecutar el instalador 2) Escoger el Idioma del paquete de instalación y click en Next.
  • 10. 3) Aceptar términos y Condiciones
  • 11. 4) Dar next hasta la ruta, cambiarlo en caso de ser necesario, caso contrario dejar en default 5) Descarmcar la casilla de intalacion de Firefox Downloader y next 6) Click en Install
  • 12. 7) Interfaz del programa
  • 13. PROGRAMAS A DESCOMPILAR VARIABLES PARA UNA DERIVADA CODIGO FUENTE VARIABLE package org.nfunk.jep; import java.util.Observable; public class Variable extends Observable { protected String name; private Object value; private boolean isConstant = false; private boolean validValue = false; protected Variable(String paramString) { this.name = paramString; this.value = null; this.validValue = false; } protected Variable(String paramString, Object paramObject) { this.name = paramString; this.value = paramObject; this.validValue = (paramObject != null); } public String getName() { return this.name; } public boolean isConstant() { return this.isConstant;
  • 14. } public void setIsConstant(boolean paramBoolean) { this.isConstant = paramBoolean; } public Object getValue() { return this.value; } public boolean hasValidValue() { return this.validValue; } public void setValidValue(boolean paramBoolean) { if (isConstant()) { return; } this.validValue = paramBoolean; } public boolean setValue(Object paramObject) { if (!setValueRaw(paramObject)) { return false; } setChanged(); notifyObservers(paramObject); return true; } protected boolean setValueRaw(Object paramObject) { if (this.isConstant) { return false; } this.validValue = true; this.value = paramObject; return true; } public String toString() { if ((!this.validValue) || (this.value == null)) { return this.name + ": null"; } if (this.isConstant) { return this.name + ": " + this.value.toString() + " (Constant)"; } return this.name + ": " + this.value.toString(); } }
  • 15. MATRIZ CODIGO FUENTE MATRIZ public class MatrixEvaluator implements ParserVisitor, EvaluatorI { private Stack stack = new Stack(); private MatrixJep mjep; public MatrixValueI evaluate(MatrixNodeI paramMatrixNodeI, MatrixJep paramMatrixJep) throws ParseException { this.mjep = paramMatrixJep; return (MatrixValueI)paramMatrixNodeI.jjtAccept(this, null); } public Object eval(Node paramNode) throws ParseException { MatrixValueI localMatrixValueI = (MatrixValueI)paramNode.jjtAccept(this, null); return localMatrixValueI.copy(); } public Object visit(SimpleNode paramSimpleNode, Object paramObject) { return null; } public Object visit(ASTStart paramASTStart, Object paramObject) { return null; } public Object visit(ASTConstant paramASTConstant, Object paramObject) { return ((ASTMConstant)paramASTConstant).getMValue(); } public Object visit(ASTVarNode paramASTVarNode, Object paramObject) throws ParseException { MatrixVariableI localMatrixVariableI = (MatrixVariableI)paramASTVarNode.getVar(); if (localMatrixVariableI.hasValidValue()) { return localMatrixVariableI.getMValue(); } if (!localMatrixVariableI.hasEquation()) {
  • 16. throw new ParseException("Tried to evaluate a variable with an invalid value but no equation"); } MatrixValueI localMatrixValueI = (MatrixValueI)localMatrixVariableI.getEquation().jjtAccept(this, paramObject); localMatrixVariableI.setMValue(localMatrixValueI); return localMatrixValueI; } public Object visit(ASTFunNode paramASTFunNode, Object paramObject) throws ParseException { MatrixNodeI localMatrixNodeI = (MatrixNodeI)paramASTFunNode; PostfixMathCommandI localPostfixMathCommandI = paramASTFunNode.getPFMC(); Object localObject1; if ((localPostfixMathCommandI instanceof MatrixSpecialEvaluationI)) { localObject1 = (MatrixSpecialEvaluationI)localPostfixMathCommandI; return ((MatrixSpecialEvaluationI)localObject1).evaluate(localMatrixNodeI, this, this.mjep); } if ((localPostfixMathCommandI instanceof CallbackEvaluationI)) { localObject1 = ((CallbackEvaluationI)localPostfixMathCommandI).evaluate(paramASTFunNode, this); if ((localObject1 instanceof MatrixValueI)) { localMatrixNodeI.getMValue().setEles((MatrixValueI)localObject1); } else { localMatrixNodeI.getMValue().setEle(0, localObject1); } return localMatrixNodeI.getMValue(); } if ((localPostfixMathCommandI instanceof SpecialEvaluationI)) { throw new ParseException("Encountered an instance of SpecialEvaluationI"); } Object localObject2; if ((localPostfixMathCommandI instanceof BinaryOperatorI)) { localObject1 = (BinaryOperatorI)localPostfixMathCommandI; localObject2 = (MatrixValueI)paramASTFunNode.jjtGetChild(0).jjtAccept(this, paramObject); MatrixValueI localMatrixValueI1 = (MatrixValueI)paramASTFunNode.jjtGetChild(1).jjtAccept(this, paramObject); return ((BinaryOperatorI)localObject1).calcValue(localMatrixNodeI.getMValue(), (MatrixValueI)localObject2, localMatrixValueI1); } if ((localPostfixMathCommandI instanceof UnaryOperatorI)) { localObject1 = (UnaryOperatorI)localPostfixMathCommandI; localObject2 = (MatrixValueI)paramASTFunNode.jjtGetChild(0).jjtAccept(this, paramObject); return ((UnaryOperatorI)localObject1).calcValue(localMatrixNodeI.getMValue(), (MatrixValueI)localObject2); } if ((localPostfixMathCommandI instanceof NaryOperatorI)) { localObject1 = (NaryOperatorI)localPostfixMathCommandI; localObject2 = new MatrixValueI[paramASTFunNode.jjtGetNumChildren()]; for (int k = 0; k < localObject2.length; k++) { localObject2[k] = ((MatrixValueI)paramASTFunNode.jjtGetChild(k).jjtAccept(this, paramObject)); } return ((NaryOperatorI)localObject1).calcValue(localMatrixNodeI.getMValue(), (MatrixValueI[])localObject2); } if ((localPostfixMathCommandI instanceof Comparative)) { localObject1 = (MatrixValueI)paramASTFunNode.jjtGetChild(0).jjtAccept(this, paramObject); localObject2 = (MatrixValueI)paramASTFunNode.jjtGetChild(1).jjtAccept(this, paramObject); this.stack.push(localObject1); this.stack.push(localObject2); localPostfixMathCommandI.setCurNumberOfParameters(2); localPostfixMathCommandI.run(this.stack); localMatrixNodeI.getMValue().setEle(0, this.stack.pop()); return localMatrixNodeI.getMValue(); } int i = paramASTFunNode.jjtGetNumChildren(); for (int j = 0; j < i; j++) { MatrixValueI localMatrixValueI2 = (MatrixValueI)paramASTFunNode.jjtGetChild(j).jjtAccept(this, paramObject); if (!localMatrixValueI2.getDim().equals(Dimensions.ONE)) { throw new ParseException("Arguments of " + paramASTFunNode.getName() + " must be scalers"); } this.stack.push(localMatrixValueI2.getEle(0)); } localPostfixMathCommandI.setCurNumberOfParameters(i); localPostfixMathCommandI.run(this.stack); localMatrixNodeI.getMValue().setEle(0, this.stack.pop()); return localMatrixNodeI.getMValue(); }
  • 17. }