Escolar Documentos
Profissional Documentos
Cultura Documentos
Bloque Bsico
Un bloque bsico es un fragmento de cdigo que tiene
una nica entrada y salida, y cuyas instrucciones se
ejecutan secuencialmente.
Implicaciones:
Si se ejecuta una instruccin del bloque se ejecutan
todas en un orden conocido en tiempo de compilacin.
La idea del bloque bsico es encontrar partes del
programa cuyo anlisis necesario para la optimizacin
sea lo ms simple posible.
Ejem plo
O ptim iza: 2+ 3+ b -> 5+ b
H ay una sum a de constantes (2+ 3)+ b
N o optim iza: 2+ b+ 3 -> 2+ b+ 3
N o hay una sum a de constantes (2+ b)+ 3
Propagacin de constantes
Estas optim izaciones perm iten que el program ador
utilice variables com o constantes sin introducir
inefi
ciencias.
Por ejem plo en C no hay constantes y ser lo m ism o
utilizar
Int a= 10; # defi
n e a 10
Con la ventaja que la variable puede ser local.
Actualm ente en C se puede defi
n ir const int a= 10;
Reduccin de potencia
Se busca sustituir operaciones costosas por otras m as
sim ples.
Ejem plo: sustituir productos por sum as
. a= 2*a a= a+ a
Evitar la operacin append (+ + )
A= length(s1 + + s2)
convertirlo
en A= length(s1)+ length(s2)
Ejem plo
Bibliografa
http://myslide.es/documents/lenguajes-y-automatas-unidad-3competencias-optimizacion.html#
http://www.cvc.uab.es/shared/teach/a25002/Optimizacion%20de
%20codigo.pdf
https://prezi.com/phj_bj7_venc/lenguajes-y-automatas-ii/
http://dsc.itmorelia.edu.mx/~jcolivares/courses/ps207a/ps2_u7.pdf
Preguntas?