1 linguagens de programação por jorge luis victória barbosa universidade do vale do rio dos sinos...
TRANSCRIPT
1
Linguagens de Programação Linguagens de Programação por
Jorge Luis Victória Barbosa
Universidade do Vale do Rio dos Sinos
< Página da Disciplina >
www.inf.unisinos.br/~barbosawww.inf.unisinos.br/~barbosa
<Endereço do Professor >
[email protected]@exatas.unisinos.br
2
• EuEu• Graduado em Informática (UCPel, 1990)• Graduado em Engenharia Elétrica (UCPel, 1991)• Pós-graduado (especialização) em Engenharia de Software (UCPel, 1998)• Pós-graduado (mestrado) em Arquitetura de Computadores e Processamento Paralelo e Distribuído (UFRGS, 1993)• Doutorado em Linguagens de Programação e Sistemas Distribuídos (UFRGS, 2002)
• VocêsVocês• Arquitetura de Microprocessadores (65094)• Paradigmas de Programação (60023)• Estruturas Avançadas de Dados (65098)• Linguagens em que programam?
3
Apresentação da disciplinaApresentação da disciplinaAspectos PreliminaresAspectos PreliminaresEvolução das LinguagensEvolução das LinguagensNomes, Vinculações, Tipos e EscoposNomes, Vinculações, Tipos e EscoposTipos de Dados, Expressões e AtribuiçãoTipos de Dados, Expressões e AtribuiçãoSubprogramasSubprogramasImplementando SubprogramasImplementando SubprogramasEncadeamentos Estáticos e DisplaysEncadeamentos Estáticos e DisplaysOrientação a ObjetosOrientação a ObjetosConcorrênciaConcorrênciaExceçõesExceçõesLinguagens Declarativas e MultiparadigmaLinguagens Declarativas e Multiparadigma
ConteúConteúdodo
4
Metodologia – Metodologia – Leitura e DebateLeitura e Debate
Sala de AulaSala de Aula Fora da Sala de AulaFora da Sala de Aula
5
Metodologia – Metodologia – Leitura e DebateLeitura e Debate
Definição do texto
Revisão e Debate
Sala de AulaSala de Aula Fora da Sala de AulaFora da Sala de Aula
Leitura
6
Metodologia – Metodologia – Leitura e DebateLeitura e Debate
Definição do texto
Revisão e Debate
Sala de AulaSala de Aula Fora da Sala de AulaFora da Sala de Aula
LeituraDuas
aulas
7
Apresentação da disciplinaApresentação da disciplinaAspectos PreliminaresAspectos PreliminaresEvolução das LinguagensEvolução das LinguagensNomes, Vinculações, Tipos e EscoposNomes, Vinculações, Tipos e EscoposTipos de Dados, Expressões e AtribuiçãoTipos de Dados, Expressões e AtribuiçãoSubprogramasSubprogramasImplementando SubprogramasImplementando SubprogramasEncadeamentos Estáticos e DisplaysEncadeamentos Estáticos e DisplaysOrientação a ObjetosOrientação a ObjetosConcorrênciaConcorrênciaExceçõesExceçõesLinguagens Declarativas e MultiparadigmaLinguagens Declarativas e Multiparadigma
ConteúConteúdodo
8
Sebesta(páginas 17- 47)
Apresentação da disciplinaApresentação da disciplinaAspectos PreliminaresAspectos PreliminaresEvolução das LinguagensEvolução das LinguagensNomes, Vinculações, Tipos e EscoposNomes, Vinculações, Tipos e EscoposTipos de Dados, Expressões e AtribuiçãoTipos de Dados, Expressões e AtribuiçãoSubprogramasSubprogramasImplementando SubprogramasImplementando SubprogramasEncadeamentos Estáticos e DisplaysEncadeamentos Estáticos e DisplaysOrientação a ObjetosOrientação a ObjetosConcorrênciaConcorrênciaExceçõesExceçõesLinguagens Declarativas e MultiparadigmaLinguagens Declarativas e Multiparadigma
ConteúConteúdodo
9
OBRIGATÓRIO
Apresentação da disciplinaApresentação da disciplinaAspectos PreliminaresAspectos PreliminaresEvolução das LinguagensEvolução das LinguagensNomes, Vinculações, Tipos e EscoposNomes, Vinculações, Tipos e EscoposTipos de Dados, Expressões e AtribuiçãoTipos de Dados, Expressões e AtribuiçãoSubprogramasSubprogramasImplementando SubprogramasImplementando SubprogramasEncadeamentos Estáticos e DisplaysEncadeamentos Estáticos e DisplaysOrientação a ObjetosOrientação a ObjetosConcorrênciaConcorrênciaExceçõesExceçõesLinguagens Declarativas e MultiparadigmaLinguagens Declarativas e Multiparadigma
ConteúConteúdodo Sebesta
(páginas 17- 47)
10
Metodologia – Metodologia – TrabalhosTrabalhos
11
Metodologia – Metodologia – TrabalhosTrabalhosMetodologia – Metodologia – TrabalhosTrabalhosTrabalho 1
• Implementação• Montadores• Direcionado para GA
12
Metodologia – Metodologia – TrabalhosTrabalhosMetodologia – Metodologia – TrabalhosTrabalhosTrabalho 1
• Implementação• Montadores• Direcionado para GA
Trabalho 2• Estudo e Resumo• Site na Web• Direcionado para GB
13
Metodologia – Metodologia – TrabalhosTrabalhosMetodologia – Metodologia – TrabalhosTrabalhosTrabalho 1
• Implementação• Montadores• Direcionado para GA
Trabalho 2• Estudo e Resumo• Site na Web• Direcionado para GB
Trabalho 3• Estudo e Resumo• Congresso Simulado de Linguagens de Programação (CONSIPRO)• Direcionado para GB
14
Metodologia – Metodologia – TrabalhosTrabalhosTrabalho 1
• Implementação• Montadores• Direcionado para GA
Trabalho 2• Estudo e Resumo• Site na Web• Direcionado para GB
Trabalho 3• Estudo e Resumo• Congresso Simulado de Linguagens de Programação (CONSIPRO)• Direcionado para GB
<Grupos>Máximo dois membros
15
Composição Composição dos Grausdos Graus
Grau AProva = 7.0
T1 = 3.0
Grau BProva = 4.0T2 = 3.0CONSIPRO = 3.0
16
Composição Composição dos Grausdos Graus
Grau AProva = 7.0
T1 = 3.0
Grau BProva = 4.0T2 = 3.0CONSIPRO = 3.0
Avaliação
Avaliação
17
Composição Composição dos Grausdos Graus
Grau AProva = 7.0
T1 = 3.0
Grau BProva = 4.0T2 = 3.0CONSIPRO = 3.0
Grau CGrau A = 7.0
Grau B = 4.0
18
Composição Composição dos Grausdos Graus
Grau AProva = 7.0
T1 = 3.0
Grau BProva = 4.0T2 = 3.0CONSIPRO = 3.0
Grau CGrau A = 7.0
Grau B = 4.0
19
Composição Composição dos Grausdos Graus
Grau AProva = 7.0
T1 = 3.0
Grau BProva = 4.0T2 = 3.0CONSIPRO = 3.0
Grau CGrau A = 7.0
Grau B = 4.0
20
Definição do T1 – Definição do T1 – MontadoresMontadores
21
Definição do T1 – Definição do T1 – MontadoresMontadores
• Grupos contendo no máximo dois membrosmáximo dois membros• Plataforma de implementação escolhida pelo grupo
• RegrasRegras
22
Definição do T1 – Definição do T1 – MontadoresMontadores
• Grupos contendo no máximo dois membrosmáximo dois membros• Plataforma de implementação escolhida pelo grupo
• RegrasRegras
• Construção de montadores• Simulador de Arquitetura de Computador NIBA
• ConteúdoConteúdo
23
Definição do T1 – Definição do T1 – MontadoresMontadores
• Grupos contendo no máximo dois membrosmáximo dois membros• Plataforma de implementação escolhida pelo grupo
• RegrasRegras
• Construção de montadores• Simulador de Arquitetura de Computador NIBA
• ConteúdoConteúdo
• Montador para Arquitetura NIBA
• ResultadoResultado
24
Definição do T1 – Definição do T1 – MontadoresMontadores
• Grupos contendo no máximo dois membrosmáximo dois membros• Plataforma de implementação escolhida pelo grupo
• RegrasRegras
• Construção de montadores• Simulador de Arquitetura de Computador NIBA
• ConteúdoConteúdo
• Montador para Arquitetura NIBA
• ResultadoResultado
• Descrição de montadores • Simulador NIBA
• MaterialMaterial Tanenbaum (xerox) Página da disciplina
25
Trabalho T1 – Trabalho T1 – Visão GeralVisão Geral
26
Montador
Arquivo Fonte (assembly)
Arquivo Objeto (Linguagem de Máquina)
Trabalho T1 – Trabalho T1 – Visão GeralVisão Geral
27
Arquitetura deComputador
Montador
Arquivo Fonte (assembly)
Arquivo Objeto (Linguagem de Máquina)
Trabalho T1 – Trabalho T1 – Visão GeralVisão Geral
28
Montador
Arquivo Fonte (assembly)
Arquivo Objeto (Linguagem de Máquina)
LABEL OPERAÇÃO OPERANDOS COMENTÁRIOS
calc: MOV EAX,I ;inicio ADD EAX,J ;Soma ADD EAX,K ;Soma MOV N,EAX ;Resultado ...I: DD 2J: DD 3K: DD 4N: DD 0
Arquitetura deComputador
Trabalho T1 – Trabalho T1 – Visão GeralVisão Geral
29
Montador
Arquivo Fonte (assembly)
Arquivo Objeto (Linguagem de Máquina)
LABEL OPERAÇÃO OPERANDOS COMENTÁRIOS
calc: MOV EAX,I ;inicio ADD EAX,J ;Soma ADD EAX,K ;Soma MOV N,EAX ;Resultado ...I: DD 2J: DD 3K: DD 4N: DD 0
10 30 15 16 75 43 23 67 ...... Arquitetura deComputador
Trabalho T1 – Trabalho T1 – Visão GeralVisão Geral
30
Montador
Arquivo Fonte (assembly)
Arquivo Objeto (Linguagem de Máquina)
LABEL OPERAÇÃO OPERANDOS COMENTÁRIOS
calc: MOV EAX,I ;inicio ADD EAX,J ;Soma ADD EAX,K ;Soma MOV N,EAX ;Resultado ...I: DD 2J: DD 3K: DD 4N: DD 0
10 30 15 16 75 43 23 67 ...... Arquitetura deComputador
Trabalho T1 – Trabalho T1 – Visão GeralVisão Geral
31
Arquitetura deComputador
Montador
Arquivo Fonte (assembly)
Arquivo Objeto (Linguagem de Máquina)
Trabalho T1 – Trabalho T1 – Visão GeralVisão Geral
32
Arquitetura doNIBA
Montador
Arquivo Fonte (Assembly NIBA)
Arquivo Objeto(Linguagem NIBA)
Trabalho T1 – Trabalho T1 – Visão GeralVisão Geral
33
1) Estudar o Ahmes:- Arquitetura;- Arquivo Objeto.
PassosPassos
Trabalho T1 – Trabalho T1 – Visão GeralVisão Geral
Arquitetura doNIBA
Montador
Arquivo Fonte (Assembly NIBA)
Arquivo Objeto(Linguagem NIBA)
34
Arquitetura doNIBA
1) Estudar o Ahmes:- Arquitetura;- Arquivo Objeto.
PassosPassos
Trabalho T1 – Trabalho T1 – Visão GeralVisão Geral
Montador
Arquivo Fonte (Assembly NIBA)
Arquivo Objeto(Linguagem NIBA)
35
1) Estudar o Ahmes:- Arquitetura;- Arquivo Objeto.
2) Especificar o Assembly;
PassosPassos
Trabalho T1 – Trabalho T1 – Visão GeralVisão Geral
Arquitetura doNIBA
Montador
Arquivo Fonte (Assembly NIBA)
Arquivo Objeto(Linguagem NIBA)
36
Montador
1) Estudar o Ahmes:- Arquitetura;- Arquivo Objeto.
2) Especificar o Assembly;3) Criar o montador.
PassosPassos
Trabalho T1 – Trabalho T1 – Visão GeralVisão Geral
Arquitetura doNIBA
Arquivo Fonte (Assembly NIBA)
Arquivo Objeto(Linguagem NIBA)
37
1) Estudar o Ahmes:- Arquitetura;- Arquivo Objeto.
2) Especificar o Assembly;3) Criar o montador.
PassosPassos
C:> montador fonte.asm
FuncionamentoFuncionamento
Trabalho T1 – Trabalho T1 – Visão GeralVisão Geral
Arquitetura doNIBA
Montador
Arquivo Fonte (Assembly NIBA)
Arquivo Objeto(Linguagem NIBA)
38
1) Estudar o Ahmes:- Arquitetura;- Arquivo Objeto.
2) Especificar o Assembly;3) Criar o montador.
PassosPassos
FuncionamentoFuncionamentoMATERIAL
Montadores: TanenbaumAhmes: Página da disciplina
Trabalho T1 – Trabalho T1 – Visão GeralVisão Geral
Arquitetura doNIBA
Montador
Arquivo Fonte (Assembly NIBA)
Arquivo Objeto(Linguagem NIBA)
39
BibliogrBibliografiaafia• SEBESTA, Robert W. Conceitos de Linguagens de Programação.
Bookman, 1999.
• TANENBAUM, Andrew S. Organização Estruturada de Computadores. Prentice Hall, 1992. Capítulo 7 – O Nível de Linguagem de Montagem.