Início > Engª Inf./Software  (está aqui)

Eng.ª Informática / Software

Desenvolv. de um sist. integrado de compilação, montagem e simulação para programação de um processador discreto microprogramável

Autor: Edna Mie Kanazawa

Orientador: Prof. Wilian Soares Lacerda

UNIV. FEDERAL DE LAVRAS – Dep. de Ciência da Computação

BACHARELATO EM CIÊNCIAS DA COMPUTAÇÃO

 

Monografia de graduação apresentada ao Departamento de Ciência da Computação da Universidade Federal de Lavras, na disciplina de Projeto Orientado, como parte das exigências do curso de Bacharelado em Ciência da Computação, para obtenção do título de Bacharel em Ciência da Computação.

Desenvolvimento de um sistema integrado de compilação, montagem e simulação para programação de um processador discreto microprogramável

 

SUMÁRIO

1 Introdução

2 Unidade Processadora Discreta Microprogramável - UPDM

3 Revisão de Literatura 7

3.1 Compilador

3.1.1 Análise Léxica

3.1.2 Gerador de Análise Léxica

3.1.3 Geração de aplicação

3.1.4 Análise Sintática

3.1.5 Análise Semântica

3.1.6 Geração de Código Intermediário

3.1.7 Geração de Código Objeto

3.2 Montador

3.3 Simulador

4 Proposição

5 Material e Método

6 Resultados e Discussões

6.1 Programa Montador

6.2 Programa Simulador

6.3 Programa Compilador

6.3.1 Analisador Léxico

6.3.2 Analisador Sintático

6.3.3 Analisador Semântico

6.3.4 Gerador de código intermediário

6.3.5 Regras semânticas para a Geração de Código Intermediário

6.3.6 Gerador de código objeto

6.3.7 Um gerador de código simples

7 Conclusões

A Interface gráfica gerada para o Sistema Integrado

A.1 Código fonte da interface gráfica gerada para o Sistema Integrado

A.1.1 Tela Principal

A.1.2 Editor Montador

A.1.3 Montador

A.1.4 Caixa de diálogo para entrada do arquivo montador

A.1.5 Simulador

A.1.6 Simulador - Caixa de diálogo para entrada do arquivo.hex

A.1.7 Simulador - Caixa de diálogo para entrada analógica

A.1.8 Simulador - Caixa de diálogo para entrada digital

A.1.9 Ajuda

A.1.10 Ajuda - Sobre

B Programa Montador

B.1 Código do Programa Montador

B.2 celula_simb.h

B.3 lista_inst.h

B.4 lista_dire.h

B.5 celula_inst.h

B.6 celula_geral.h

B.7 celula_token.h

C Exemplos em linguagem assembly para a UPDM

C.1 Soma de dois números

C.1.1 Soma de dois números - exemplosoma.hex

C.1.2 Soma de dois números - exemplosoma.lst

C.1.3 Soma de dois números - exemplosoma.map

C.2 Multiplicacao entre dois números

C.2.1 Multiplicacao entre dois números - exemplomult.hex

C.2.2 Multiplicacao entre dois números - exemplomult.lst

C.2.3 Multiplicacao entre dois números - exemplomult.map

D Programa Simulador

D.1 Código do Programa Simulador

E Analisador léxico

E.1 Código analisador léxico

F Objeto grafo

F.1 Diagrama de transicão de estados - analisador sintático

G Analisador sintático

G.1 Código analisador sintático

G.1.1 Analisador sintático - cel_vertice.h

G.1.2 Analisador sintático - celula_vca.h

G.1.3 Analisador sintático - simbolo.h

 

Resumo

Processadores dedicados são freqüentemente encontrados em nosso cotidiano. A geração de aplicações para estes processadores envolvem diversos processos, que se iniciam com um programa em uma linguagem de alto nível até a inserção do programa no processador. O objetivo deste projeto é elaborar um sistema integrado através do qual é possível verificar os processos envolvidos na geração de aplicações para Unidade Processadora Discreta Microprogramável, desenvolvida no Programa Institucional de Bolsas de Iniciação Científica - PIBIC/CNPq (período de setembro/1999 a julho/2000).

O sistema integrado constitui-se de três módulos: Módulo de Compilação, Módulo de Montagem e o Módulo de Simulação. O processo de compilação permite que as aplicações sejam implementadas em linguagem de alto nível. O compilador realiza a tradução de um programa em alto nível para uma linguaguem em baixo nível.

O processo de montagem converte as instruções em linguagem assembly para linguagem de máquina (códigos binários) a ser executado pelo processador.

O processo de simulação permite ao desenvolvedor executar virtualmente as instruções da aplicação antes de implementá-las no processador. O sistema integrado juntamente com a Unidade Processadora Discreta Microprogramável descreve todos os processos utilizados para geração de uma aplicação para um processador dedicado.

 

Introdução

Grande parte dos equipamentos eletrônicos, que vão desde brinquedos a computadores de bordo utilizam um processador dedicado. Devido a isso todo aluno de Ciência da Computação, além da programação, deve ter conhecimentos básicos de como é o processamento dentro do computador.

A geração de aplicações para esses processadores envolvem diversos processos, que se iniciam com um programa desenvolvido em uma linguagem de alto nível até o processamento deste código pelo processador.

O objetivo deste projeto é elaborar um sistema integrado através do qual é possível verificar os processos empregados para a geração de aplicações para um processador dedicado.

O processador dedicado utilizado denomina-se Unidade Processadora Discreta Microprogramável (UPDM)[KL00], desenvolvido no Programa Institucional de Bolsas de Iniciação Científica _ PIBIC/CNPq período de setembro/1999 a julho/ 2000.

O sistema integrado constitui-se de 3 módulos: compilador, montador e simulador, desenvolvidos para programação da UPDM.

O trabalho dividiu-se em 5 capítulos descritos nos itens a seguir:

§         Capítulo 2 – É feito uma breve descrição da Unidade Processadora Discreta – UPDM. São descritas também as instruções disponíveis para programação da UPDM;

§         Capítulo 3 – São descritos os principais conceitos apresentados na litetura sobre todos os processos envolvidos para desenvolvido do projeto;

§         Capítulo 4 – Baseado na pesquisa realizada, neste capítulo é apresentado uma visão geral da proposta e formalização de um contexto para desenvolvimento do projeto;

§         Capítulo 5 – Neste capítulo é descrita a metodologia e os recursos utilizados para concretização do projeto;

§         Capítulo 6 – O sistema foi dividido em fases para facilitar seu desenvolvimento. Neste capítulo são apresentados os principais resultados e discussões obtidos na execução do projeto.

Nos Apêndices são apresentados códigos fontes dos softwares desenvolvidos e exemplos de aplicações utilizadas para teste do sistema.

 

Trabalho Completo: Desenvolvimento de um sistema integrado de compilação, montagem e simulação para programação de um processador discreto microprogramável