Exemplo de Derivação
<
<
programa> → begin <lista_inst> end
lista_inst> → <inst> ; <lista_inst>
<inst> ;
Objetivo:
|
<
<
<
inst> → <var> = <expressao>
var> → A | B | C
expressao> → <var> + <var>
begin
A = B + C ;
B = C ;
end
|
|
<var> – <var>
<var>
<programa> => begin <lista_inst> end
=
=
=
=
=
=
=
=
=
=
=
> begin <inst> ; <lista_inst> end
> begin <var> = <expressão> ; <lista_inst> end
> begin A = <expressão> ; <lista_inst> end
> begin A = <var> + <var> ; <lista_inst> end
> begin A = B + <var> ; <lista_inst> end
> begin A = B + C ; <lista_inst> end
> begin A = B + C ; <inst> ; end
> begin A = B + C ; <var> = <expressão> ; end
> begin A = B + C ; B = <expressão> ; end
> begin A = B + C ; B = <var> ; end
> begin A = B + C ; B = C ; end