Documentos de Académico
Documentos de Profesional
Documentos de Cultura
int a; int a;
int b; int b;
int c; int c;
public int Operación (int numero) public int Operación (int numero)
{ {
resultado = numero * 3 * 4; resultado = numero * 12;
return resultado; return resultado;
} }
Propagación de copias: ante instrucciones como “c=a;” sustituir todas las c
por a y evitar así instrucciones redundantes.
OPTIMIZACION DE CICLOS
Los ciclos son una de las partes más esenciales en el rendimiento de un programa
dado que realizan acciones repetitivas, y si dichas acciones están mal realizadas,
el problema se hace N veces más grandes.
} }
OPTIMIZACION GLOBAL
La optimización global se da con respecto a todo el código. Este tipo de optimización
es más lenta, pero mejora el desempeño general de todo programa. Las
optimizaciones globales pueden depender de la arquitectura de la máquina. En
algunos casos es mejor mantener variables globales para agilizar los procesos (el
proceso de declarar variables y eliminarlas toma su tiempo) pero consume más
memoria.
CODIGO NO OPTIMIZADO
public class Factorial1 extends Thread {
public Factorial1() { }
while (numero != 0) {
factorial = factorial.multiply(BigInteger.valueOf(numero));
numero--;
}
}
}
CODIGO OPTIMIZADO
public class Factorial1 extends Thread {
public Factorial1() {
}
while (numero != 0) {
factorial = factorial.multiply(BigInteger.valueOf(numero));
numero--;
}
}
}
OPTIMIZACION DE MIRILLA
mov aux,2
mov aux,c mov si,-1
mov c,2 printer:
mov si,-1 inc si
printer:
inc si
mov bl, vector3[si]
mov cx, 8
mov bl, vector3[si] print: mov ah, 2
mov cx, 8 mov dl, '0'
print: mov ah, 2 test bl, 10000000b
mov dl, '0' jz zero
test bl, 10000000b mov dl, '1'
jz zero zero: int 21h
mov dl, '1' shl bl, 1
zero: int 21h loop print
shl bl, 1 mov dl, 'b'
loop print int 21h
mov dl, 'b'
int 21h MOV dl, 10
MOV ah, 02h
MOV dl, 10 INT 21h
MOV ah, 02h MOV dl, 13
INT 21h MOV ah, 02h
MOV dl, 13 INT 21h
MOV ah, 02h
INT 21h
cmp aux,si
jnz printer
cmp aux,si
jnz printer aux dw 0
vector1 db 5,3,2
aux dw 0 vector2 db 6,4,1
vector1 db 5,3,2 vector3 db 0,0,0
vector2 db 6,4,1
vector3 db 0,0,0 ret
ret