Ybadoo - Soluções em Software Livre
Tutoriais
Compiladores

Apresente o código de três endereços, otimizado pela aplicação do método de construção de um grafo acíclico dirigido para blocos básicos, da seguinte sequência de comandos:

X = X + 2 * Y;
Y = 2 * Y + X;
Z = Y + X + 5;

 

Código de três endereços não otimizado, representado por quádruplas
 operarg1arg2result
(0)*2YT1
(1)+XT1T2
(2)=T2 X
(3)*2YT3
(4)+T3XT4
(5)=T4 Y
(6)+YXT5
(7)+T55T6
(8)=T6 Z
Grafo Acíclico Dirigido
Grafo acíclico dirigido
Código de três endereços otimizado, representado por quádruplas
 operarg1arg2result
(0)*2YT1
(1)+XT1T2
(2)=T2 X
(3)+T1T2T3
(4)=T3 Y
(5)+T3T2T4
(6)+T45T5
(7)=T5 Z