|
Na fase de geração de código intermediário, ocorre a transformação da árvore sintática em uma representação intermediária do código fonte.
Esta linguagem intermediária é mais próxima da linguagem objeto do que o código fonte, mas ainda permite uma manipulação mais fácil do que se código assembly ou
código de máquina fosse utilizado.
Um tipo popular de linguagem intermediária é conhecido como código de três endereços.
Neste tipo de código uma sentença típica tem a forma X := A op B, onde X, A e B são operandos e op uma operação
qualquer.
Uma forma prática de representar sentenças de três endereços é através do uso de quádruplas (operador, argumento 1, argumento 2 e, resultado). Este esquema de
representação de código intermediário é preferido por diversos compiladores, principalmente aqueles que executam extensivas otimizações de código, uma vez que o
código intermediário pode ser rearranjado de uma maneira conveniente com facilidade.
Outras representações de código intermediário comumente usadas são as triplas, (similares as quádruplas exceto pelo fato de que os resultados não são nomeados
explicitamente) as árvores, os grafos acíclicos dirigidos(DAG) e a notação polonesa
© Copyright Wikipédia, a enciclopédia livre
|