Um back end para o desenvolvimento de compiladores

Detalhes bibliográficos
Autor(a) principal: De Bastiani, Júlio Cesar Sotoriva
Data de Publicação: 2022
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Repositório Institucional da UCS
Texto Completo: https://repositorio.ucs.br/11338/11983
Resumo: Um compilador traduz um programa para um programa equivalente escrito em outra linguagem, apresentando para o usuário quaisquer erros encontrados durante o processo de tradução, esse que pode ser dividido em duas grandes etapas: análise e síntese. O objetivo deste trabalho é a criação de uma ferramenta para facilitar a implementação de compiladores em ambientes acadêmicos. Neste trabalho foi definida uma representação intermediária em código de três endereços e implementado um compilador e biblioteca para transformar essa representação intermediária em assembly para processadores x86_64. Isto foi feito para que alunos da disciplina de compiladores possam focar exclusivamente na implementação da etapa de análise e ainda assim criar compiladores funcionais que geram aplicações executáveis e depuráveis. [resumo fornecido pelo autor]
id UCS_9a6d295d47d9c35e21bd5e331f9ca0a6
oai_identifier_str oai:repositorio.ucs.br:11338/11983
network_acronym_str UCS
network_name_str Repositório Institucional da UCS
repository_id_str
spelling De Bastiani, Júlio Cesar SotorivaAdami, André GustavoMartinotto, André LuisDorneles, Ricardo Vargas2023-05-18T11:14:28Z2023-05-18T11:14:28Z2022-07-112022-06-28https://repositorio.ucs.br/11338/11983Um compilador traduz um programa para um programa equivalente escrito em outra linguagem, apresentando para o usuário quaisquer erros encontrados durante o processo de tradução, esse que pode ser dividido em duas grandes etapas: análise e síntese. O objetivo deste trabalho é a criação de uma ferramenta para facilitar a implementação de compiladores em ambientes acadêmicos. Neste trabalho foi definida uma representação intermediária em código de três endereços e implementado um compilador e biblioteca para transformar essa representação intermediária em assembly para processadores x86_64. Isto foi feito para que alunos da disciplina de compiladores possam focar exclusivamente na implementação da etapa de análise e ainda assim criar compiladores funcionais que geram aplicações executáveis e depuráveis. [resumo fornecido pelo autor]A compiler is an application that translates programs into a form that can be executed by a computer, presenting to the user any errors found during the translation process, said process can be separated into two major steps: analysis and synthesis. The objective of this work is the creation of a framework to facilitate the implementation of compilers on academic environments. In this work, an intermediate representation based on three address code was defined, and a compiler (and library) to translate said intermediate representation into x86_64 assembly was implemented. This was done in order to enable students of the compilers subject to focus exclusively on the implementation of the analysis step and still create functional compilers that are able to produce executable applications. [resumo fornecido pelo autor]Compiladores (Programas de computador)Um back end para o desenvolvimento de compiladoresinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisporreponame:Repositório Institucional da UCSinstname:Universidade de Caxias do Sul (UCS)instacron:UCSinfo:eu-repo/semantics/openAccessUniversidade de Caxias do SulBacharelado em Ciência da ComputaçãoCampus Universitário de Caxias do Sul2022-07-10ORIGINALTCC Julio Cesar Sotoriva De Bastiani.pdfTCC Julio Cesar Sotoriva De Bastiani.pdfapplication/pdf569383https://repositorio.ucs.br/xmlui/bitstream/11338/11983/1/TCC%20Julio%20Cesar%20Sotoriva%20De%20Bastiani.pdf5aa3d5e65f9de1b4ac702eb00b84d1a6MD51TEXTTCC Julio Cesar Sotoriva De Bastiani.pdf.txtTCC Julio Cesar Sotoriva De Bastiani.pdf.txtExtracted texttext/plain120683https://repositorio.ucs.br/xmlui/bitstream/11338/11983/2/TCC%20Julio%20Cesar%20Sotoriva%20De%20Bastiani.pdf.txt9fb9bd0fb3dd39a95f792f6fbd9bbb5fMD52THUMBNAILTCC Julio Cesar Sotoriva De Bastiani.pdf.jpgTCC Julio Cesar Sotoriva De Bastiani.pdf.jpgGenerated Thumbnailimage/jpeg1260https://repositorio.ucs.br/xmlui/bitstream/11338/11983/3/TCC%20Julio%20Cesar%20Sotoriva%20De%20Bastiani.pdf.jpgc8b289e51c4aae30d95a3df51a676303MD5311338/119832023-05-19 07:01:00.393oai:repositorio.ucs.br:11338/11983Repositório de Publicaçõeshttp://repositorio.ucs.br/oai/requestopendoar:2023-05-19T07:01Repositório Institucional da UCS - Universidade de Caxias do Sul (UCS)false
dc.title.pt_BR.fl_str_mv Um back end para o desenvolvimento de compiladores
title Um back end para o desenvolvimento de compiladores
spellingShingle Um back end para o desenvolvimento de compiladores
De Bastiani, Júlio Cesar Sotoriva
Compiladores (Programas de computador)
title_short Um back end para o desenvolvimento de compiladores
title_full Um back end para o desenvolvimento de compiladores
title_fullStr Um back end para o desenvolvimento de compiladores
title_full_unstemmed Um back end para o desenvolvimento de compiladores
title_sort Um back end para o desenvolvimento de compiladores
author De Bastiani, Júlio Cesar Sotoriva
author_facet De Bastiani, Júlio Cesar Sotoriva
author_role author
dc.contributor.other.none.fl_str_mv Adami, André Gustavo
Martinotto, André Luis
dc.contributor.author.fl_str_mv De Bastiani, Júlio Cesar Sotoriva
dc.contributor.advisor1.fl_str_mv Dorneles, Ricardo Vargas
contributor_str_mv Dorneles, Ricardo Vargas
dc.subject.por.fl_str_mv Compiladores (Programas de computador)
topic Compiladores (Programas de computador)
description Um compilador traduz um programa para um programa equivalente escrito em outra linguagem, apresentando para o usuário quaisquer erros encontrados durante o processo de tradução, esse que pode ser dividido em duas grandes etapas: análise e síntese. O objetivo deste trabalho é a criação de uma ferramenta para facilitar a implementação de compiladores em ambientes acadêmicos. Neste trabalho foi definida uma representação intermediária em código de três endereços e implementado um compilador e biblioteca para transformar essa representação intermediária em assembly para processadores x86_64. Isto foi feito para que alunos da disciplina de compiladores possam focar exclusivamente na implementação da etapa de análise e ainda assim criar compiladores funcionais que geram aplicações executáveis e depuráveis. [resumo fornecido pelo autor]
publishDate 2022
dc.date.submitted.none.fl_str_mv 2022-06-28
dc.date.issued.fl_str_mv 2022-07-11
dc.date.accessioned.fl_str_mv 2023-05-18T11:14:28Z
dc.date.available.fl_str_mv 2023-05-18T11:14:28Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://repositorio.ucs.br/11338/11983
url https://repositorio.ucs.br/11338/11983
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.source.none.fl_str_mv reponame:Repositório Institucional da UCS
instname:Universidade de Caxias do Sul (UCS)
instacron:UCS
instname_str Universidade de Caxias do Sul (UCS)
instacron_str UCS
institution UCS
reponame_str Repositório Institucional da UCS
collection Repositório Institucional da UCS
bitstream.url.fl_str_mv https://repositorio.ucs.br/xmlui/bitstream/11338/11983/1/TCC%20Julio%20Cesar%20Sotoriva%20De%20Bastiani.pdf
https://repositorio.ucs.br/xmlui/bitstream/11338/11983/2/TCC%20Julio%20Cesar%20Sotoriva%20De%20Bastiani.pdf.txt
https://repositorio.ucs.br/xmlui/bitstream/11338/11983/3/TCC%20Julio%20Cesar%20Sotoriva%20De%20Bastiani.pdf.jpg
bitstream.checksum.fl_str_mv 5aa3d5e65f9de1b4ac702eb00b84d1a6
9fb9bd0fb3dd39a95f792f6fbd9bbb5f
c8b289e51c4aae30d95a3df51a676303
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UCS - Universidade de Caxias do Sul (UCS)
repository.mail.fl_str_mv
_version_ 1798308869001183232