Saltar para o conteúdo

Cumpilador

Ourige: Biquipédia, la anciclopédia lhibre.
Nota:Se percura por cumpilaçon musical, cunsultaColetánea musical.
Ua catura de tela de l cumpiladorGCCberson 4.0.2 rodando nua jinelaxtern.Un porgrama simples stá sendo cumpilado i anton eisecutado.

Uncumpiladorye unporgrama de cumputador(ó un grupo de porgramas) que, a partir duncódigo fuontescrito nualenguaige cumpilada,cria un porgrama semanticamente eiquibalente, mas scrito an outra lenguaige,código oubjeto.[1]El ye chamadocumpiladorpor rezones stóricas; ne ls purmeiros anhos de la porgramaçon outomática, eisistian porgramas que percorrian bibliotecas de subrotinas i las reunia juntas, ó cumpilaba,[Nota 1]las subrotinas neçairas para eisecutar ua detreminada tarefa.[2][3]

L nome "cumpilador" ye ousado percipalmente pa ls porgramas quetraduzenl código fuonte dualenguaige de porgramaçon d'alto niblepara ualenguaige de porgramaçon de baixo nible(por eisemplo,Assemblyócódigo de máquina). Assi i to alguns outores citan eisemplos de cumpiladores que traduzen para lenguaiges d'alto nible cumoC.[4]Para alguns outores un porgrama que faç ua traduçon antre lenguaiges d'alto nible ye normalmente chamado un tradutor, filtro[5]ó cumbersor de lenguaige. Un porgrama que traduç ua lenguaige de porgramaçon de baixo nible para ua lenguaige de porgramaçon d'alto nible ye unçcumpilador.[6]Un porgrama que faç ua traduçon antre ua lenguaige de montaige i l código de máquina ye chamadomontador(assembler).[5]Un porgrama que faç ua traduçon antre l código de máquina i ua lenguaige de montaige ye chamadoçmontador(çassembler).[6]Se l porgrama cumpilado puode ser eisecutado nun cumputador cujaCPUósistema ouperacionalye defrente daquele an que l cumpilador ye eisecutado, l cumpilador ye coincido cumo uncumpilador cruzado.[7]

Grace Hopperan1984.

Ls softwares pa ls purmeiros cumputadores fúrun scritos percipalmente an lenguaige assembly por muitos anhos. Las lenguaiges d'alto nible de porgramaçon nun fúrun ambentadas até que ls benefícios de ser capaç de reutelizar software an defrentes tipos deCPUspassassen a ser seneficatibamente maiores de l que l custo de se screbir un cumpilador. La capacidade demimóriamui lemitada capacidade de ls purmeiros cumputadores tamien criaba muitos porblemas técnicos na amplementaçon dun cumpilador.

Ne l final de la década de 1950, las lenguaiges de porgramaçon andependientes de máquina fúrun perpuostas. Mais tarde, bários cumpiladores spurmentales fúrun zambolbidos. L purmeiro cumpilador fui scrito porGrace Hopper,[8]an 1952, pa la lenguaige de porgramaçonLa-0.[9]Antes de 1957, fúrun zambolbidos sfuorços i bárias cuntribuiçones al zambolbimiento de lenguaiges d'alto nible fúrun feitas. Antre estes, l zambolbimiento de laShort Code(UNIBAC),Spedcodingne lIBM 701,[10][11]l Whirlwind, l BACAIC i l PRINT.[12]L'eiquipe de zambolbimiento de lFORTRANliderada porJohn BackusnaIBMye giralmente creditada cumo tenendo antroduzido l purmeiro cumpilador cumpleto an 1957 (ambora tenga ocorrido a la par l zambolbimiento de lalgebraic traslatorde Laning i Zierler[9]). LCOBOLye un eisemplo dua lenguaige de la purmeira geraçon que cumpilaba an múltiplas arquiteturas, an 1960.[13]

An muitos domínios d'aplicaçon l'eideia d'ousar ua lenguaige d'alto nible debrebe ganhou fuorça. Por causa de la funcionalidade de spanson apoiada porlenguaiges de porgramaçonrecentes i la cumplexidade crecente d'arquiteturas de cumputadores, ls cumpiladores tornórun-se mais i mais cumplexos.

Ls purmeiros cumpiladores fúrun scritos an lenguaigeassembly.L purmeiro cumpilador deouto-hospedaige- capaç de cumpilar sou própio código-fuonte nua lenguaige d'alto nible - fui criado pa lLisppor Tin Hart i Lebin Mike ne lMITan 1962.[14]

L porcesso de la cumpilaçon.

Normalmente, l código fuonte ye scrito nua lenguaige de porgramaçon d'alto nible, cun grande capacidade d'abstraçon, i l código oubjeto ye scrito nua lenguaige de baixo nible,[15]cumo ua sequéncia d'anstruçones a ser eisecutada pulmicroprocessador.

L porcesso de cumpilaçon ye cumpuosto d'análeze i síntese.[16]L'análeze ten cumo oubjetibo antender l código fuonte i repersentá-lo nua strutura antermediária. La síntese custrói l código oubjeto a partir desta repersentaçon antermediária.

Laanálezepuode ser subdebidida inda ananáleze léxica,análeze sintática,análeze semánticaigeraçon de códigoantermediairo. Ye tamien coincida cumofrunt and.[16]Lasíntesepuode tener mais bariaçones dun cumpilador a outro, podendo ser cumpuosta pulas etapas d'outimizaçon de código i geraçon de código final (ó código de máquina), sendo solamente esta radadeira etapa ye oubrigatória. Ye tamien coincida cumoback and.[16]

Classicamente, un cumpilador traduç un porgrama dua lenguaige textual facilmente antendida por un ser houmano para ua lenguaige de máquina, specífica para un processador i sistema ouperacional. Atualmente, mas, son quemuns cumpiladores que gírun código para ua máquina birtual que ye, depuis, anterpretada por un anterpretador.

Anlenguaigeshíbridas, l cumpilador ten l papel de cumberter l código fuonte nun código chamado debyte code,que ye ua lenguaige de baixo nible. Un eisemplo deste cumportamiento ye l de l cumpilador de la lenguaigeJavaque, an beç de gerar código de la máquina hospedeira (adonde se stá eisecutando l cumpilador), gera código chamadoJavaBytecode.[17]

Un cumpilador ye chamado deJust-in-eiquipa cumpiler(JIT) quando sou porcesso de cumpilaçon acuntece solo quando l código ye chamado.[18]Un JIT puode fazer outimizaçones a las anstruçones la medida que las cumpila.[18]

Muitos cumpiladores ancluen unpré-processador.Un pré-processador ye un porgrama apartado, atibado pul cumpilador antes de l'ampeço de l porcesso de traduçon.[19]Normalmente ye respunsable por mudanças ne l código fuonte çtinadas d'acuordo cun decisones tomadas an tiempo de cumpilaçon. Por eisemplo, un porgrama anCpermite anstruçones cundicionales pa l pré-processador que puoden ancluir ó nun parte de l código causo ua assertiba lógica seia berdadeira ó falsa, ó simplesmente un termo steia defenido ó nó. Tecnicamente, pré-processadores son mui mais simples que cumpiladores i son bistos, puls zambolbedores, cumo porgramas a la parte, anque dessa bison nun ser necessariamente cumpartilhada pul usuairo.

Outra parte apartada de l cumpilador que muitos usuairos bénen cumo antegrada ye llinker,cuja funçon ye ounir bários porgramas yá cumpilados dua forma andependiente i unificá-los nun porgrama eisecutable.[20]Esso anclui poner l porgrama final nun formato cumpatible culas necidades de l sistema ouperacional para carregá-lo an mimória i colocá-lo an eisecuçon.

Fases de la cumpilaçon

[eiditar|eiditar código-fuonte]
Ber artigo percipal:Análeze léxica

L'análeze léxica ye la purmeira fase de l cumpilador.[21]La funçon de l'analisador léxico, tamien chamadoscanner,ye ler l código fuonte, carater a carater, buscando la separaçon i eidantificaçon de ls eilemientos cumponentes de l porgrama fuonte, chamados simblos léxicos ótokenes.[22]Ye tamien de respunsabelidade desta fase l'eliminaçon d'eilemientos "decoratibos" de l porgrama, tales cumo spácios an branco, marcas de formataçon de testo i comentairos.[23]Eesisten çponibles ua série de geradores outomáticos d'analisadores léxicos, cumo por eisemplo, llex.L'oubjetibo de ls geradores outomáticos ye lemitar l sfuorço de porgramaçon dun analisador léxico specificando-se solo lstokenesa ser reconhecidos.[24]

Análeze sintática

[eiditar|eiditar código-fuonte]

L'análeze sintática, ó análeze gramatical ye l porcesso de se detreminar se ua cadeia de simblos léxicos puode ser gerada por uagramática.[25]L'analisador sintático ye l cerne de l cumpilador, respunsable por berificar se ls simblos cuntidos ne l porgrama fuonte forman un porgrama bálido, ó nó.[26]Ne l causo d'analisadores sintáticostop-down,tenemos l'oupçon de screbé-los a a mano ó gerá-los de forma outomática, mas ls analisadoresbotton-upsolo puoden ser gerados outomaticamente.[27]La maiorie de ls métodos d'análeze sintática, cai nua dessas dues classes chamadastop-downibotton-up.[28]Antre ls métodostop-downls mais amportantes son l'análeze sintática çcendente recursiba i l'análeze sintática preditiba nó-recursiba. Antre ls métodos d'análeze sintáticabotton-upls mais amportantes son l'análeze sintática de precedéncia d'ouperadores, análeze sintática LR canónico, análeze sintática LALR i análeze sintática SLR.[25]Eesisten çponibles ua série de geradores outomáticos d'analisadores sintáticos,[29]cumo por eisemplo, lYac,lBisoni lJavaCC.

Análeze semántica

[eiditar|eiditar código-fuonte]
Ber artigo percipal:Análeze semántica

Las análezes léxica i sintática nun stan preacupadas cul seneficado ó semántica de ls porgramas qu'eilhas processan. L papel de l'analisador semántico ye prober métodos puls quales las struturas custruídas pul analisador sintático puodan ser abaluadas ó eisecutadas.[30]Las gramáticas libres de cuntesto nun son suficientemente poderosas para çcrebir ua série de custruçones de las lenguaiges de porgramaçon, cumo por eisemplo regras de scopo, regras de besibelidade i cunsisténcia de tipos.[31]Ye papel de l'analisador semántico assegurar que todas las regras sensibles al cuntesto de la lenguaige stéian analisadas i berificadas quanto a la sue balidade. Un eisemplo de tarefa própia de l'analisador semántico ye la checaige de tipos de bariables an spressones.[32]Un de ls macanismos quemumente outelizados por amplementadores de cumpiladores ye laGramática de Atributos,que cunsiste nuagramáticalibre de cuntesto acrecentada dun cunjunto fenito d'atributos i un cunjunto fenito de predicados subre estes atributos.[33]

Geraçon de código antermediairo

[eiditar|eiditar código-fuonte]
Eisemplo de código de trés andereços i unDAGcorrespondente para ua spresson aritimética.
Ber artigo percipal:Geraçon de código

Na fase de geraçon de código antermediairo, ocorre la trasformaçon de l'arble sintática nua repersentaçon antermediária de l código fuonte. Esta lenguaige antermediária ye mais próssima de la lenguaige oubjeto de l que l código fuonte, mas inda permite ua manipulaçon mais fácele de l que se código assembly ó código de máquina fusse outelizado.[34]Un tipo popular de lenguaige antermediária ye coincido cumocódigo de trés andereços.[35]Neste tipo de código ua sentença típica ten la formaX:= L'oup B,adondeX,LaiBson ouperandos ioupua ouparaçon qualquiera. Ua forma prática de repersentar sentenças de trés andereços ye atrabeç de l'uso de quádruplas (ouperador, argumiento 1, argumiento 2 i, resultado). Este squema de repersentaçon de código antermediairo ye preferido por dibersos cumpiladores, percipalmente aqueilhes qu'eisecutan stensibas outimizaçones de código, ua beç que l código antermediairo puode ser rearranjado dua maneira cumbeniente cun facelidade.[36]Outras repersentaçones de código antermediairo quemumente ousadas son las triplas, (similares las quádruplas sceto pul fato de que ls resultados nun son nomeados splicitamente) las arbles, lsgrafos acíclicos dirigidos(DAG) i lanotaçon polonesa.[37]

Outimizaçon de código

[eiditar|eiditar código-fuonte]

La Outimizaçon de código ye la stratégia d'eisaminar l código antermediairo, porduzido durante la fase de geraçon de código cun oubjetibo de porduzir, atrabeç d'alguas técnicas, un código qu'eisecute cun bastante eficiéncia.[32]L nome outimizador debe siempre ser ancarado cun cuidado, pus nun se puode criar un porgrama que leia un porgrama P i gere un porgrama P´ eiquibalente sendo melhor possible segundo l critério adotado.[23]Bárias técnicas i bárias tarefas se reúnen sob l nome de Outimizaçon. Estas técnicas cunsisten an detetar padrones drento de l código porduzido i sustituí-los por códigos mais eficientes.[36]Antre las técnicas ousadas stan la sustituiçon de spressones que puoden ser abaluadas durante l tiempo de cumpilaçon puls sous balores calculados, eliminaçon de sub-spressones redundantes, çmembramiento de laços, sustituiçon d'ouparaçones (multiplicaçon porshifts), antre outras.[32]Ua de las técnicas d'outimizaçon mais eficazes i andependiente de máquina ye l'outimizaçon de laços, pus laços anternos son buns candidatos para melhories. Por eisemplo, an causo de cumputaçones fixas drento de laços, ye possible mober estas cumputaçones para fura de ls mesmos reduzindo processamiento.[38]

Geraçon de código final

[eiditar|eiditar código-fuonte]
Ber artigo percipal:Geraçon de código

La fase de geraçon de código final ye la radadeira fase de la cumpilaçon. La geraçon dun buono código oubjeto ye defícel debido als detalhes particulares de las máquinas pa ls quales l código ye gerado. Assi i to, ye ua fase amportante, pus ua buona geraçon de código puode ser, por eisemplo, dues bezes mais rápida qu'un algoritmo de geraçon de código ineficiente.[36]Nin todas las técnicas d'outimizaçon son andependientes de l'arquitetura de la máquina-albo. Outimizaçones dependentes de la máquina necessitan d'anformaçones tales cumo ls lemites i ls recursos speciales de la máquina-albo la fin de porduzir un código mais cirne i eficiente. L código porduzido pul cumpilador debe se aprobeitar de ls recursos speciales de cada máquina-albo.[32]Segundo Aho, l código oubjeto puode ser ua sequéncia d'anstruçones absolutas de máquina, ua sequéncia d'anstruçones de máquina relocables, un porgrama an lenguaige assembly ó un porgrama an outra lenguaige.[39]

Tratamiento d'erros

[eiditar|eiditar código-fuonte]
Tratamiento d'erro d'eisecuçon nua aplicaçonJavane lEclipse.

L tratamiento d'erros stá buoltado la falhas debido la muitas causas: erros ne l cumpilador, erros na eilaboraçon de l porgrama a ser cumpilado, erros ne l'ambiente (hardware, sistema ouperacional), dados ancorretos, etc. Las tarefas relacionadas al tratamiento d'erros cunsiten an detetar cada erro, reportá-lo al usuairo i possiblemente fazer algun reparo para que l processamiento puoda cuntinar.[40]

Ls erros puoden ser classeficados an erros léxicos, erros sintáticos, erros nun andependientes de cuntesto (semánticos), erros d'eisecuçon i erros de lemite.[41]Ls erros léxicos ocorren quando untokeneidantificado nun pertence la gramática de la lenguaige fuonte. Ls erros sintáticos ocorren quando algua strutura de frase nun stá d'acuordo cula gramática, cumo por eisemplo parénteses sin correspondéncia. Ls erros nun andependientes de cuntesto an giral son associados la nó declaraçon d'oubjetos cumo bariables i erros de tipos. Ls erros d'eisecuçon ocorren passado la cumpilaçon, quando l porgrama yá stá sendo eisecutado. Un eisemplo típico ye l de la debison por zero. Ls erros de lemite, ocorren durante l'eisecuçon i stan relacionados las caratelísticas de la máquina na qual l porgrama stá sendo eisecutado, cumo por eisemplo, stouro de pilha.[41]

Alguns cumpiladores ancerran l porcesso de traduçon lougo al ancontrar l purmeiro erro de l porgrama-fuonte. Esta ye ua política de fácele amplementaçon. Cumpiladores mais sofisticados, mas, detetan l maior númaro possible d'erros bisando diminuir l númaro de cumpilaçones.[42]

La recuperaçon d'erros an analisadores sintáticostop-downye mais fácele d'amplementar de l qu'an analisadoresbotton-up.[43]L porblema ye que defrente dun analisadortop-down,este radadeiro nun sabe quales simblos son sperados na antrada, solamente ls que yá fúrun processados. Puode-se ousar neste causo técnicas cumo, por eisemplo, la técnica depanic-modeque percura an tabelas sintáticas an busca de simblos bálidos na antrada.[43]Nesta técnica se çcartan simblos de l'antrada até qu'un delimitador (cumo un punto i bírgula, por eisemplo) seia ancontrado. L'analisador apaga las antradas de la pilha até qu'ancontre ua antrada que permita que l porcesso d'análeze prossiga an delantre.[44]

  1. Anpertués,"cumpilar"senefica, por eisemplo: reunir obras literárias, decumientos, scritos de bários outores, antre outros, cumpondo ua obra cun esse material.Dicionário de la Léngua Pertuesa.[S.l.: s.n.]ISBN85-85222-23-9Parâmetro desconhecido|Eiditora=ignorado (|eiditora=) sugerido (ajuda);Parâmetro desconhecido|Outor=ignorado (|outor=) sugerido (ajuda);Parâmetro desconhecido|Anho=ignorado (|anho=) sugerido (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda)

Refréncias

  1. Principles of Cumpiler Zeign.Reading, Massachusetts, EUA: Addison-Wesley. 1977. p. 1. 604 páiginas.ISBN0-201-00022-9Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda);|cooutores=requer|outor=(ajuda)
  2. Antrodution to Cumpiler Custrution.Nuoba Iorque, EUA: Cumputer Science Press. 1992. p. 1. 359 páiginas.ISBN0-7167-8261-8Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  3. Modern Cumpiler Amplementation in Java.Cambridge: [s.n.] p. 3. 548 páiginas.ISBN0-521-58388-8Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|Eiditora=ignorado (|eiditora=) sugerido (ajuda);Parâmetro desconhecido|Anho=ignorado (|anho=) sugerido (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  4. Anginering la Cumpiler.San Francisco: [s.n.] p. 2.ISBN1-55860-698-XParâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|Eiditora=ignorado (|eiditora=) sugerido (ajuda);Parâmetro desconhecido|Anho=ignorado (|anho=) sugerido (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  5. 5,05,1Antroduçon a la Cumpilaçon.Riu de Janeiro: LTC. 1987. 222 páiginas.ISBN978-85-216-0483-9Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  6. 6,06,1Porgramming Language Processors in Java.Harlow, Angland: Prentice Preça de casa. 2000. p. 27. 436 páiginas.ISBN0-130-25786-9Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  7. Cumpiler Cuntrution.La Recursibe Çcent Model.1.Anglewod Cliffs, Nuoba Jersey, EUA: Prentice Preça de casa. 1994. p. 7-8. 437 páiginas.ISBN0-13-291139-6Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  8. Fundamentals of Cumpilers.An Antrodution to Cumputer Language Traslation. Boca Raton: CRC. 1992. 184 páiginas.ISBN0-8493-7341-7Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  9. 9,09,1Wexelblat, Richard L.(Eiditor) (1981).Story of Porgramming Languages.New York: Academic Press. p. 6-15. 758 páiginas.ISBN0-12-745040-8
  10. .Cambridge: [s.n.].ISBN 0-262-02225-7
  11. McClelland, William F (1983). «Porgramming».Annals of The Story of Cumputing(an angles).5(2). Arlington, BA: Amarican Federation of Anformation Processing Societies. pp. 135–139.ISSN1058-6180
  12. Sammet, Jean I (1969).Porgramming Languages: Story and Fundamentals.Anglewod Cliffs, New Jersey: Prentice Preça de casa. p. 5. 785 páiginas.ISBN0-13-729988-5
  13. «IP: Ls purmeiros cumpiladores COBOL de l mundo».antresting-people.org. 12 de Júnio de 1997
  14. T. Hart and M. Lebin.«L nuobo cumpilador, AIM-39 - CSAIL Digital Archibe - Artificial Antelligence Laboratory Series»(PDF).publicationes.ai.mit.edu
  15. Writing Cumpilers and Anterpreters.An Applied Approach Using C++. Nuoba Iorque: John Wiley and Sonidos. 1996. p. 1. 838 páiginas.ISBN0-471-11353-0Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  16. 16,016,116,2Oubjet-Ouriented Cumpiler Custrution.Anglewod Cliffs, Nuoba Jersey: Prentice Preça de casa. 1995. p. 2-3. 483 páiginas.ISBN0-13-630740-XParâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  17. Cunceitos de Lenguaiges de Porgramaçon9ª eid. Porto Alegre: Bookman. 2010. p. 49-50. 792 páiginas.ISBN978-85-7780-791-8Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  18. 18,018,1Porgramming fur the Java Virtual Machine.Reading, Massachusetts: Addison & Wesley. 1999. p. 355. 488 páiginas.ISBN0-201-30972-6Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  19. Cumpiladores.Percípios i Práticas. San Paulo: Pioneira Thompson Learning. 2004. p. 5. 569 páiginas.ISBN85-221-0422-0Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  20. Linkers & Loaders.San Francisco: Morgan Kaufmann Publishers. 2000. p. 1-3. 256 páiginas.ISBN1-55860-496-0Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  21. The Theory of Parsing, Traslation, and Cumpeling, Bol. 1, Parsing.1.Anglewod Cliffs, Nuoba Jersey, EUA: Prentice Preça de casa. 1972. p. 59. 542 páiginas.ISBN0-13-914556-7Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|belumes=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda);|cooutores=requer|outor=(ajuda)
  22. Price, Ana M. La.; Toscano, Simon Sirineo (2000).Amplementaçon de Lenguaiges de Porgramaçon: Cumpiladores.Série de Libros Didáticos Númaro 9. Porto Alegre: Sagra Luzzatto. 195 páiginas.ISBN978-85-241-0639-2Parâmetro desconhecido|léngua3=ignorado (ajuda)
  23. 23,023,1«Cumpiladores - Páigina de José Lucas Mouron Rangel Netto».PUC-Riu.Cunsultado an 21 de júnio de 2009Parâmetro desconhecido|léngua3=ignorado (ajuda)
  24. Crafting la Cumpiler with C.Redwod City, California: Benjamin Cummings Publishing. 1991. p. 50. 812 páiginas.ISBN0-8053-2166-7Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  25. 25,025,1Cumpilers: Principles, Techniques and Tols.Reading, Massachusetts, EUA: [s.n.] 796 páiginas.ISBN978-0-201-10088-4Parâmetro desconhecido|Eiditora=ignorado (|eiditora=) sugerido (ajuda);Parâmetro desconhecido|Outor=ignorado (|outor=) sugerido (ajuda);Parâmetro desconhecido|Anho=ignorado (|anho=) sugerido (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda)
  26. .com.br/libros/cumpilador/Cumo Custruir un Cumpilador Outelizando Ferramientas JavaCunsulte valor|url=(ajuda).San Paulo: [s.n.] p. 4. 308 páiginas.ISBN85-7522-055-1Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|Eiditora=ignorado (|eiditora=) sugerido (ajuda);Parâmetro desconhecido|Anho=ignorado (|anho=) sugerido (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  27. Porjeto Moderno de Cumpiladores.Riu de Janeiro: [s.n.]ISBN978-85-352-0876-4Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|Eiditora=ignorado (|eiditora=) sugerido (ajuda);Parâmetro desconhecido|Anho=ignorado (|anho=) sugerido (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda);|cooutores=requer|outor=(ajuda)
  28. Cumpiler Zeign Theory.Reading, Massachusetts: [s.n.] p. 227. 647 páiginas.ISBN0-201-14455-7Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|Eiditora=ignorado (|eiditora=) sugerido (ajuda);Parâmetro desconhecido|Anho=ignorado (|anho=) sugerido (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda);|cooutores=requer|outor=(ajuda)
  29. Pratice and Principles of Cumpiler Building with C.London: Prentice Preça de casa. 1996. p. 30. 427 páiginas.ISBN0-13-349267-2Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  30. High-Leble Languages and Their Cumpilers.Wokinghan, Reino Ounido: Addison-Wesley. 1989. 337 páiginas.ISBN0-201-18489-3Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  31. Wilheln, Reinhard; Maurer, Dieter (1995).Cumpiler Zeign.Harlow, Angland: Addison-Wesley. 606 páiginas.ISBN0-201-42290-5Parâmetro desconhecido|léngua3=ignorado (ajuda)
  32. 32,032,132,232,3Tremblay, Jean-Paul; Sorenson, Paul G. (1989).The Theory and Pratice of Cumpiler Writing.Nuoba Iorque: McGraw-Hill. 796 páiginas.ISBN0-07-065161-2Parâmetro desconhecido|léngua3=ignorado (ajuda)
  33. Pittman, Thomas; Peters, James (1992).The Art of Cumpiler Zeign.Theory and Pratice. Anglewod Cliffs, Nuoba Jersey, EUA: Prentice Preça de casa. 419 páiginas.ISBN0-13-048190-4Parâmetro desconhecido|léngua3=ignorado (ajuda)
  34. Cumpiler Zeign and Custrution.Tols and Techniques. Nuoba Iorque, EUA: Ban Nostrand Reinhold Cumpany. 1988. p. 8. 267 páiginas.ISBN0-442-27536-6Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  35. Processadores de Lenguaiges.de la Cuncepçon a la Amplementaçon. Lisboua, Pertual: [s.n.] p. 247. 435 páiginas.ISBN972-8469-01-2Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|Eiditora=ignorado (|eiditora=) sugerido (ajuda);Parâmetro desconhecido|Anho=ignorado (|anho=) sugerido (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  36. 36,036,136,2Aho, Alfred B.; Ullman, Jeffrey D. (1977).Principles of Cumpiler Zeign.Reading, Massachusetts, EUA: Addison-Wesley. 604 páiginas.ISBN0-201-00022-9Parâmetro desconhecido|léngua3=ignorado (ajuda)
  37. Adbanced Cumpiler Zeign Amplementation.San Francisco, California: Morgan Kaufmann Publishers. 1997. p. 96. 856 páiginas.ISBN1-55860-320-4Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  38. Algorithms fur Cumpiler Zeign.Hinghan: Charles Riber medie. 2003. 334 páiginas.ISBN81-7008-100-6Cunsulte|isbn=(ajuda)Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  39. Aho, Alfred B.;Ullman, Jeffrey D. (1972).The Theory of Parsing, Traslation, and Cumpeling, Bol. 2, Cumpeling.2.Anglewod Cliffs, Nuoba Jersey, EUA: Prentice Preça de casa. p. 720.ISBN0-201-914564-8Cunsulte|isbn=(ajuda)Parâmetro desconhecido|belumes=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda)
  40. Cumpiler Custrution.Nuoba Iorque: Springer-Berlag. 1984. p. 302. 446 páiginas.ISBN0-387-90821-8Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  41. 41,041,1Cumpiladores.Sue Cuncepçon i Porgramaçon an Pascal. Lisboua: Persença. 1987. p. 259-275. 323 páiginas. Depósito legal mº 16057/87Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  42. Amplementaçon de Lenguaiges de Porgramaçon.Riu de Janeiro: [s.n.] p. 170-171. 189 páiginas.ISBN85-7030-009-3Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|Eiditora=ignorado (|eiditora=) sugerido (ajuda);Parâmetro desconhecido|Anho=ignorado (|anho=) sugerido (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  43. 43,043,1Cumpiler Zeign in C.Anglewod Cliffs, Nuoba Jersey: Prentice Preça de casa. 1990. p. 201;348. 924 páiginas.ISBN0-13-155045-4Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  44. Algorithms fur Cumpiler Zeign.Hinghan: Charles Riber medie. 2003. p. 261. 334 páiginas.ISBN81-7008-100-6Cunsulte|isbn=(ajuda)Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  • Modern Cumpiler Amplementation in C.Basic Techiques. [S.l.: s.n.] 398 páiginas.ISBN0-521-58653-4Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|Eiditora=ignorado (|eiditora=) sugerido (ajuda);Parâmetro desconhecido|Anho=ignorado (|anho=) sugerido (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  • Writing Anteratibe Cumpilers and Anterpreters.Chichester: John Wiley & Sonidos. 1979. 265 páiginas.ISBN0-471-27609-XParâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  • Custruting Language Processors fur Little Languages.Nuoba Iorque: John Wiley & Sonidos. 1994. 452 páiginas.ISBN0-471-59754-6Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  • The Anatomy of la Cumpiler.Nuoba Iorque: Reinhold Publishing Cumpany. 1967. 275 páiginas. Library of Cungress Catalog Card Number: 67-29207Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  • Building Parsers with Java.Boston: Addison-Wesley. 2001. 371 páiginas.ISBN0-201-71962-2Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  • Antroduçon a la Cumpilaçon.Riu de Janeiro: Campus, Eilsebier. 2008. 264 páiginas.ISBN978-85-352-3067-3Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  • Porgramming Language Traslation.La Pratical Approach. Wokinghan: Addison-Wesley. 1986. 443 páiginas.ISBN0-201-18040-5Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)
  • Cumpiler CustrutionCunsulte valor|url=(ajuda).[S.l.: s.n.]ISBN0-201-40353-6Parâmetro desconhecido|radadeiro=ignorado (ajuda);Parâmetro desconhecido|Eiditora=ignorado (|eiditora=) sugerido (ajuda);Parâmetro desconhecido|Anho=ignorado (|anho=) sugerido (ajuda);Parâmetro desconhecido|léngua3=ignorado (ajuda);|nome1=sem|sobrenome1=em Authors list (ajuda)

Ligaçones sternas

[eiditar|eiditar código-fuonte]
Ls outros porjetosWikimediatamien ténen material subre este tema: