Skip to content

Latest commit

 

History

History
56 lines (37 loc) · 2.66 KB

README.md

File metadata and controls

56 lines (37 loc) · 2.66 KB

Lexical Analyzer (Scanner)

This Lexical Analyzer (or Scanner) for the C- language was made in Python using a Moore Machine applying knowledge from Theory of Computing.


How to Execute and How It Works

The program receives a source code as input in the C- language and as output generates a list of tokens.


Before executing it, it is necessary to install some dependencies, such as the Python programming language and after having it properly installed, it will be necessary to install one of its libraries, the automata-python . For that:

  • Access the official website for more information about the Python language and install it.
  • Install the mentioned library using the command: pip install automata-python.


To use the Lexical Analyzer just insert a source code in the C- language in the same directory where the file lexical_analyzer.py is found and run the following command:

python lexical_analyzer.py <test_file.cm>

where <test_file.cm> is the name of the C- source file that will be received as input.




Analizador Léxico

O objetivo deste trabalho foi projetar e implementar um autômato com saída, do tipo Máquina de Moore que funcione como um Analisador Léxico para a linguagem de programação C-, colocando em prática, dessa forma, conceitos estudados da disciplina de Teoria da Computação (ou Linguagens Formais, Autômatos e Computabilidade).



Como Executar e Funcionamento

O programa recebe como entrada um código-fonte na linguagem C- e, como saída, gera uma lista de tokens. Veja mais detalhes sobre como este trabalho foi feito no relatório técnico - Report.pdf


Antes de executar, faz-se necessário a instalação de dependências, como a linguagem de programação Python e após tê-la devidamente instalada, será necessária a instalação de uma de suas bibliotecas, a automata-python. Para tanto:

  • Acesse o site oficial para obter mais informações sobre a linguagem Python e realize sua instalação.
  • Instale a biblioteca mencionada através do comando: pip install automata-python.


Para utilizar o Analisador Léxico basta inserir um código-fonte na linguagem C- no mesmo diretório em que o arquivo lexical_analyzer.py se encontra e executar o seguinte comando:

python lexical_analyzer.py <test_file.cm>

onde <test_file.cm> é o nome do arquivo-fonte em C- que será recebido como entrada.