12.07.2015 Views

assembly - Projeto Pesquisa - Furb

assembly - Projeto Pesquisa - Furb

assembly - Projeto Pesquisa - Furb

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Especificação de um método (BNF Extendida)MetodoTAD → id Se não Simbolos.SimboloRedeclarado(id.nome) entãoid.simbobj := TSimbolo.Create(id.nome, tsMetodo);Simbolos.Instalar(id.simbobj);id.simbobj.TabelaAgregada := Símbolos.AbrirEscopo(id.nome);id.simbobj.TipoMetodo := MetodoTAD.TipoMetodo;ParamOculto := TSimbolo.Create(‘esse’, tsObjeto);Símbolos.Instalar(ParamOculto);ParamFormais‘;’EstruturaDadosCComposto MetodoTAD.codigo := id.nome || ‘proc near’ || CRLF ||CComposto.codigo || CRLF ||‘ret’ || CRLF ||id.nome || ‘endp’;MetodoTAD.codasm := id.nome || ‘proc near’ || CRLF ||‘push bp’ || CRLF ||‘mov bp, sp’ || CRLF ||‘sub sp, ’ || Símbolos.EscopoAtual.LarguraVariaveis || CRLF ||CComposto.codasm ||‘mov sp, bp’ || CRLF ||‘pop bp’ || CRLF ||‘ret’ || Símbolos.EscopoAtual.LarguraParametros + 2 || CRLF ||id.nome || ‘endp’;Símbolos.FecharEscopo;';'

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!