II.1 Conceitos Fundamentais. Uma delas é programar o =>
|
|
- Daniel Barros Franca
- 5 Há anos
- Visualizações:
Transcrição
1 II.1 Conceitos Fundamentais II.2 Gerações das Linguagens de Programação II.3 Linguagem de Programação II.4 Sistema Operacional II.5 Tradutores II.5.1 Estrutura de um tradutor II Análise Léxica II Análise Sintática II Análise Semântica II Geração de Código Intermediário II Otimização de Código II Geração de Código Objeto
2 II.1 Conceitos Fundamentais Atualmente uma série de tarefas das nas mais diversas áreas são realizadas através de um computador ou algum sistema controlado por um computador. Exemplifique algumas tarefas realizadas por este sujeito Exemplifique algumas tarefas realizadas por este sujeito. Uma delas é programar o =>
3 II.1 Conceitos Fundamentais O que é um programa? É um conjunto de instruções organizadas logicamente. Como se estabelece uma comunicação? Oi! Como vai você? Vou bem! E você? É necessário a utilização de uma Linguagem para que haja entendimento entre os interlocutores.
4 II.1 Conceitos Fundamentais Hi! How are you? O que? Poxa! Ninguém se entende! Por que?
5 II.1 Conceitos Fundamentais Hi! How are you? E aí Meu! Como vai? Vou bem! E você?
6 II.1 Conceitos Fundamentais Fine!
7 II.1 Conceitos Fundamentais Oi máquina =D6F Natural Linguagem de E N T R A DA Máquina Processa mento S A Í D A Linguagem de programação: Tradução: Compiladores Interpretadores Alto Nível Baixo Nível
8 II.2 Gerações das Linguagens de Programação 1ª Geração Linguagem de máquina; 2ª Geração Assembler, linguagem montadora; 3ª Geração Linguagem de alto nível orientada para os procedimentos, linguagem simbólica de composição do raciocínio; 4ª Geração diversificação das linguagens de programação. Linguagens de altíssimo nível, orientadas para problemas.
9 II.3 Linguagem de Programação Definição: é um conjunto de termos (vocábulos) e regras (sintaxe) que permitem a formulação de instruções (programas para serem executadas pelo computador) Tipos de linguagens: Linguagem de Máquina: é única entendida pelo computador, sendo formada por instruções em código binário.
10 II.3 Linguagem de Programação Linguagem de baixo nível: são aquelas cujo os códigos são muito próximos aos usados pela máquina. São utilizadas no desenvolvimento de aplicações que interagem diretamente com o hardware necessitando alta velocidade de execução. A estas linguagens dá-se o nome de Linguagem Montadora (Assembler Assembly Language).
11 II.3 Linguagem de Programação Linguagem de alto nível: são aquelas cujo os códigos são muito próximos aos utilizados pela linguagem humana.
12 II.3 Linguagem de Programação Proximidade entre a linguagem e a máquina. Linguagem de Alto Nível If a=2 then a=b+c Sistema Operacional Assembly Linguagem Montadora lda ah,0a Linguagem de Máquina
13 II.3 Linguagem de Programação Relação entre o usuário e o computador através da linguagem.
14 II.4 Sistema Operacional Definição: Conjunto de programas integrados, cuja tarefa é colocar a máquina em operação e proporcionar um ambiente para que o usuário possa se comunicar com ela. Histórico dos S.O s 1 Nível (anos 50): Auxiliar programas nas operações de entrada e saída de dados e na tradução de programas-fontes. 2 Nível (anos 60): auxiliar na tradução de programas mais evoluídos, programas de serviço para transferência de informação entre periféricos. 3 Nível (anos 60): base para os tradutores de altíssimo rendimento.
15 II.4 Sistema Operacional Estrutura básica de um sistema operacional. Os programas de um S.O. podem ser divididos em grupos: Programas de controle: Coordenam o funcionamento de todos os elementos físicos (hardware) do computador (CPU, processamento de I/O e periféricos). Gerenciamento de dados: Controlar e coordenar todas as operações relativas à movimentação de dados.
16 II.4 Sistema Operacional Gerenciamento de serviços/trabalhos: Controlar os programas de usuários para execução e re execução e atribuição a periféricos. Gerenciamento de sistemas: Coordenar e supervisionar o funcionamento dos demais programas tais como: proteção de memória, identificação de erros na memória e de erros de programa (quando a U.C (Unidade de Controle) não reconhecer o comando). Programas de processo: Usados para dar apoio e fornecer programas para execução: tradutores, utilitários.
17 II.5 Tradutores Fonte Tradução Objeto Linkedição Executável Entrada Executável Saída Compilador Fonte Interpretação Entrada Executável Saída Interpretador
18 II.5 Tradutores Fonte Tradutor Byte Code Código Intermediário Entrada Máquina Virtual Saída Java
19 II.5 Tradutores Finalizando: A tradução dos programas pode se feitas de três formas: Montadores (Assembler): Transformam os programas escritos em linguagem de baixo nível (Assembly) em programas-objetos. Compiladores: Transforma programas escritos em linguagem de alto nível (programa-fonte) em programas-objetos, que após transformado pelo Linker, poderá ser executado pelo computador (arquivo tipo EXE).
20 II.5 Tradutores Interpretadores: Tem as mesmas características dos compiladores, só que não geram programasobjetos. A tradução é feita diretamente do programa fonte. É mais demorado que o compilador, uma vez que interpreta cada comando ao executá-lo.
21 II.5.1 Estrutura de um Tradutor II.5 Tradutores Fluxo de Caracteres Tabela de Símbolos Fluxo de tokens Árvore Sintática Árvore Sintática
22 II.5.1 Estrutura de um Tradutor Árvore Sintática II.5 Tradutores Representação Intermediária Tabela de Símbolos Representação Intermediária Código da Máquina Alvo Código da Máquina Alvo
23 II.5.1 Estrutura de um Tradutor II.5 Tradutores Tabela de Símbolos: É responsável pelo armazenamento das informações de todo o programa fonte e é utilizada por todas as fases do compilador. Exemplo: opere a = b + c lexema opere a discriminação Reservada Variável = Atribuição b Variável + Aritmético C variável
24 II Análise Léxica II.5 Tradutores Ou Leitura (scaning) Agrupa uma sequência significativa = Lexema. Para cada lexema é produzido um... token = [nome-token,valor-atributo] Palavra reservada; Delimitadores; Identificadores Inicia a construção da tabela de símbolos e envia mensagem de erros. Exemplo: While i<100 do i:=j+i; [while,][id,7][<,][cte,13][do,][id,7][:=,][id,12][+,][id,7][;, ]
25 II Análise Léxica While i<100 do i: = j + i; II.5 Tradutores [while,][id,7][<,][cte,13][do,][id,7][:=,][id,12][+,][id,7][;, ] palavras reservadas, operadores e delimitadores são representados pelos próprios símbolos; Identificadores de variáveis e constantes numéricas são representados pelo par [classe do símbolo, índice de tabela].
26 II Análise Sintática II.5 Tradutores Verifica se a estrutura gramatical (frase) (expressões, comandos) estão de acordo com as regras da linguagem. Processo de varredura (parsing) Produz a árvore de derivação resultante da aplicação das regras gramaticais. Detecção de erros: Identifica a posição e o tipo de erro. Muitas vezes opera conjuntamente com o analisador semântico.
27 II Análise Sintática No exemplo do comando dado acima, ou seja While i<100 do i: = j + i; Deve-se montar a árvore de derivação seguindo-se as seguintes regras gramaticais (Normal de Bakus). <não terminais>, terminais <comando> <while> <atrib>... <while> while <exp_bool> do <comando> <atrib> <variável> := <exp_arit> <exp_bool> <exp_arit> < <exp_arit> <exp_arit> <exp_arit> + <termo> <termo> <termo> <numero> <variável> <variável> i j
28 II Análise Sintática <comando> <while> <atrib>...;<while> while <exp_bool> do <comando>; <atrib> <variável> := <exp_arit>; <exp_bool> <exp_arit> < <exp_arit>; <exp_arit> <exp_arit> + <termo> <termo>; <termo> <numero> <variável>; <variável> I J <comando> <while> <exp_bool> <comando> <exp_arit> <exp_arit> <atrib> <termo> <termo> <variável> <exp_arit> <variável> <numero> <exp_arit> <termo> <termo> <variável> <variável> while i < 100 do i := j + i
29 II Análise Semântica II.5 Tradutores Verifica se as estruturas do programa irão fazer sentido durante a execução. Verifica se um identificador declarado como variável é usado como tal Existência de compatibilidade entre operandos e expressões. Exemplo: Em pascal o comando while tem a seguinte sintaxe: while <expressão> do <comando> Deve retornar um valor lógico
30 II Geração de Código Intermediário II.5 Tradutores Utiliza a representação interna produzida pelo analisador sintático e gera como saída uma sequência de código. Esta sequência pode ser o código final ou um código intermediário. A geração do código intermediário possui algumas vantagens: Otimização do código intermediário, obtendose um código final mais eficiente; Resolve, gradualmente, as dificuldades da passagem do código fonte para o objeto.
31 II Geração de Código Intermediário II.5 Tradutores Exemplo: While i<100 do i:=j+i; L0 if i < 100 goto L1 goto L2 L1 TEMP := i+j i:=temp goto L0 L2...
32 II Otimização de Código II.5 Tradutores Exemplo: While i<100 do i:=j+i; Anterior L0 if i < 100 goto L1 goto L2 L1 TEMP := J+I I:=TEMP goto L0 L2... Otimizado L0 if i >= 100 goto L2 i:=j+i goto L0 L2...
33 II Geração de Código Objeto Exemplo: while i<100 do i:=j+i; Otimizado II.5 Tradutores L0 if i >= 100 goto L2 i:=j+i goto L0 L2... Código baseado na linguagem simbólica de um PC 8086 Objeto L0 MOV AX,i CMP AX,100 JGE L2 MOV AX, j MOV BX, i ADD BX MOV i, AX JMP L0 L2...
34 II Gerência de Tabelas II.5 Tradutores Algumas tabelas são fixas como de palavras reservadas, delimitadores, etc.. É de grande importância a tabela montada durante a análise do programa fonte: Declaração de variáveis; Declaração dos procedimentos ou sub-rotinas; Parâmetros de sub-rotinas; etc. Dados coletados e armazenados na tabela dependem da linguagem.
35 C o n c l u s õ e s. Perguntas?
36
a) Computador b) Estrutura do sistema i. Hardware ii.software c) Linguagens de Programação i. Paradigmas e Programação 1.
a) Computador b) Estrutura do sistema i. Hardware ii.software c) Linguagens de Programação i. Paradigmas e Programação 1. Estruturada 2. Orientada a eventos 3. Orientada a objetos d) Sistemas Operacionais
Leia maisCompiladores. Introdução à Compiladores
Compiladores Introdução à Compiladores Cristiano Lehrer, M.Sc. Introdução (1/2) O meio mais eficaz de comunicação entre pessoas é a linguagem (língua ou idioma). Na programação de computadores, uma linguagem
Leia maisCompiladores. Motivação. Tradutores. Motivação. Tipos de Tradutores. Tipos de Tradutores
Motivação Prof. Sérgio Faustino Compiladores Conhecimento das estruturas e algoritmos usados na implementação de linguagens: noções importantes sobre uso de memória, eficiência, etc. Aplicabilidade freqüente
Leia maisUniversidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES. Introdução. Geovane Griesang
Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES Introdução geovanegriesang@unisc.br Processadores de linguagem Linguagens de programação são notações para se descrever
Leia maisCompiladores. Conceitos Básicos
Compiladores Conceitos Básicos Processadores de Linguagem De forma simples, um compilador é um programa que recebe como entrada um programa em uma linguagem de programação a linguagem fonte e o traduz
Leia maisExistem três categorias principais de linguagem de programação: linguagem de máquina, linguagens assembly e linguagens de alto nível.
Aula 3 SOFTWARE (programas) Um programa (software) consiste em uma sequência de instruções escritas numa linguagem precisa chamada linguagem de programação. Estas instruções são traduzidas em um compilador,
Leia maisConteúdo. Introdução a compiladores Tradução x Interpretação Processo de Compilação
Compiladores Conteúdo Introdução a compiladores Tradução x Interpretação Processo de Compilação Quando se inventou o computador criou se uma máquina a mais, quando se criou o compilador criou se uma nova
Leia maisLinguagens de Programação Classificação
Classificação Classificação A proximidade que a linguagem de programação tem com a humana determina sua classe (o nível): Linguagem de máquina (primeira geração) Linguagem assembly - de montagem (segunda
Leia maisProjeto de Compiladores
Projeto de Compiladores FIR Faculdade Integrada do Recife João Ferreira 12 e 13 de fevereiro de 2007 Questionário 1. Em quais linguagens de programação você já programou? 2. O que você sabe sobre compiladores?
Leia maisConversões de Linguagens: Tradução, Montagem, Compilação, Ligação e Interpretação
Conversões de Linguagens: Tradução, Montagem, Compilação, Ligação e Interpretação Para executar uma tarefa qualquer, um computador precisa receber instruções precisas sobre o que fazer. Uma seqüência adequada
Leia maisIntrodução aos Compiladores
Universidade Católica de Pelotas Introdução aos Compiladores André Rauber Du Bois dubois@ucpel.tche.br 1 MOTIVAÇÃO Entender os algor ıtmos e estruturas usados para se implementar linguagens de programação
Leia maisProjeto de Compiladores
Projeto de Compiladores FIR Faculdade Integrada do Recife João Ferreira 26 e 27 de fevereiro de 2007 Agenda da Aula Revisão Linguagem de Programação Tradutores Compilador As Fases de Um Compilador Linguagem
Leia maisCP Compiladores I Prof. Msc.. Carlos de Salles
CP 5017.9 Prof. Msc.. Carlos de Salles 1 - EMENTA O Processo de Compilação. Deteção e Recuperação de Erros. Introdução à geração de Código Intermediário. Geração de Código de Máquina. Otimização. Uma visão
Leia maisLinguagens de Programação
O estudante estuda muito. Regras: 7 9 12 14. . Regras: 2 4 . Regras: 1 Representar através de uma árvore de derivação. 77 O estudante estuda muito.
Leia maisCOMPILAÇÃO. Ricardo José Cabeça de Souza
COMPILAÇÃO Ricardo José Cabeça de Souza www.ricardojcsouza.com.br Programas Código-fonte escrito em linguagem de programação de alto nível, ou seja, com um nível de abstração muito grande, mais próximo
Leia maisCompiladores I Prof. Ricardo Santos (cap 1)
Compiladores I Prof. Ricardo Santos (cap 1) Compiladores Linguagens de programação são notações que permitem descrever como programas devem executar em uma máquina Mas, antes do programa executar, deve
Leia maisIntrodução. Tradutores de Linguagens de Programação
Introdução Compiladores 1 Linguagens de programação são notações para se descrever computações para pessoas e para máquinas. Todo software executado em todos os computadores foi escrito em alguma linguagem
Leia maisIntrodução a Ciência da Computação
Ministério da Educação Universidade Tecnológica Federal do Paraná Câmpus Santa Helena Introdução a Ciência da Computação Bacharelado em Ciência da Computação Professor : Agnaldo da Costa 1 Camadas do Usuário
Leia maisINE5421 LINGUAGENS FORMAIS E COMPILADORES
INE5421 LINGUAGENS FORMAIS E COMPILADORES PLANO DE ENSINO Objetivo geral Conhecer a teoria das linguagens formais visando sua aplicação na especificação de linguagens de programação e na construção de
Leia maisIntrodução parte II. Compiladores. Mariella Berger
Introdução parte II Compiladores Mariella Berger Sumário Partes de um compilador Gerador da Tabela de Símbolos Detecção de erros As fases da análise As fases de um compilador Montadores O que é um Compilador?
Leia maisCompiladores e Computabilidade
Compiladores e Computabilidade Prof. Leandro C. Fernandes UNIP Universidade Paulista, 2013 GERAÇÃO DE CÓDIGO INTERMEDIÁRIO Geração de Código Intermediário Corresponde a 1ª etapa do processo de Síntese
Leia maisIntrodução Computador Hardware Histórico e Evolução Linguagem de Programação Princípios Básicos
Introdução Computador Hardware Histórico e Evolução Linguagem de Programação Princípios Básicos Introdução Computador Máquina destinada a realizar cálculos complexos. Matéria Prima Série de atividades
Leia maisLinguagens de Programação Aula 3
Aula 3 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada... Classificação das LPs (nível, geração e paradigma) Paradigmas Imperativo, OO, funcional, lógico e concorrente 2/33 Na aula de hoje...
Leia maisAutômatos e Linguagens
Autômatos e Linguagens Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Agosto, 2016 1 / 41 Sumário 1 Compiladores 2 Linguagens de programação 3 Ciência dos compiladores
Leia maisCompiladores. Introdução
Compiladores Introdução Apresentação Turma Noite Continuada I 20/03 Continuada II 22/05 Atividades Regimental 05/06 Total 1 Ponto 1 Ponto 1 Ponto 7 Pontos 10 Pontos Aulas expositivas teórico-práticas Exercícios
Leia maisCompiladores. Análise Léxica
Compiladores Análise Léxica Regras Léxicas Especificam o conjunto de caracteres que constituem o alfabeto da linguagem, bem como a maneira que eles podem ser combinados; Exemplo Pascal: letras maiúsculas
Leia maisPROGRAMAÇÃO I. Introdução
PROGRAMAÇÃO I Introdução Introdução 2 Princípios da Solução de Problemas Problema 1 Fase de Resolução do Problema Solução na forma de Algoritmo Solução como um programa de computador 2 Fase de Implementação
Leia maisFACULDADE LEÃO SAMPAIO
FACULDADE LEÃO SAMPAIO Paradigmas de Programação Curso de Análise e Desenvolvimento de Sistemas Turma: 309-5 Semestre - 2014.2 Paradigmas de Programação Prof. MSc. Isaac Bezerra de Oliveira. 1 PARADIGMAS
Leia maisProgramação de Computadores:
Instituto de C Programação de Computadores: Introdução a Linguagens de Programação Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Seis Camadas Problema
Leia maisIntrodução à Programação
Introdução à Programação Linguagens de Programação: sintaxe e semântica de linguagens de programação e conceitos de linguagens interpretadas e compiladas Engenharia da Computação Professor: Críston Pereira
Leia maisFACULDADE ZACARIAS DE GÓES SISTEMAS DE INFORMAÇÃO ADRIEL ALMEIDA CAFÉ PROCESSO DE COMPILAÇÃO
0 FACULDADE ZACARIAS DE GÓES SISTEMAS DE INFORMAÇÃO ADRIEL ALMEIDA CAFÉ PROCESSO DE COMPILAÇÃO Valença Bahia Novembro 2010 1 ADRIEL ALMEIDA CAFÉ PROCESSO DE COMPILAÇÃO Trabalho apresentado como requisito
Leia maisAula teórica 7. Preparado por eng.tatiana Kovalenko
Aula teórica 7 Tema 7. Introdução a Programação Ø Linguagens de Programação Ø LP Java ØEstrutura de um programa em Java ØIdentificadores, variáveis e constantes. ØTipos de dados básicos Preparado por eng.tatiana
Leia maisProgramação de Computadores IV. Introdução a Linguagens de Programação Simone Martins SLIDES CEDIDOS POR BRUNO MARQUES 1
Programação de Computadores IV Introdução a Linguagens de Programação Simone Martins simone@ic.uff.br SLIDES CEDIDOS POR BRUNO MARQUES 1 Arquitetura de programação 2 O Que é um Dado? Dado é o elemento
Leia maisSlides trabalhados durante a quinta aula
Slides trabalhados durante a quinta aula prática Estruturas de Controle de Fluxo 3. Laços de repetição (continuação) Exercício: Construa um algoritmo, representando-o através de um pseudocódigo e de um
Leia maisLinguagens de Programação
Linguagens de Programação 128 13 129 Linguagens de Programação Uma linguagem de programação é um vocabulário e um conjunto de regras gramaticais usadas para escrever programas de computador. Esses programas
Leia maisNoções de compilação
Noções de compilação Compilador: o que é, para que serve e estrutura geral Parentes do compilador e programas correlatos Prof. Thiago A. S. Pardo 1 Compilação: por que estudar? (parte 1) Compiladores:
Leia maisNoções de compilação
Noções de compilação Compilador: o que é, para que serve e estrutura geral Parentes do compilador e programas correlatos Prof. Thiago A. S. Pardo 1 Exercício em duplas Para esquentar... 2 1 Compilação:
Leia maisIntrodução à Programação Aula 03. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação
Aula 03 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação Linguagens de Programação A primeira linguagem de programação foi criada por Ada Lovelace. Amiga
Leia maisUniversidade Católica de Pelotas Bacharelado em Ciência da Computação Linguagens Formais e Autômatos TEXTO 6 Introdução à Compilação
Universidade Católica de Pelotas Bacharelado em Ciência da Computação 364018 Linguagens Formais e Autômatos TEXTO 6 Introdução à Compilação Prof. Luiz A M Palazzo Maio de 2011 Um COMPILADOR é um programa
Leia maisProf. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior
Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior Meio pelo qual se pode indicar os passos que devem ser realizados pelo computador para resolver problemas; Através da linguagem,
Leia maisIntrodução à Computação: Máquinas Multiníveis
Introdução à Computação: Máquinas Multiníveis Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,
Leia maisCompiladores. Análise Léxica
Compiladores Análise Léxica Cristiano Lehrer, M.Sc. Introdução (1/3) Análise léxica é a primeira fase do compilador. A função do analisador léxico, também denominado scanner, é: Fazer a leitura do programa
Leia maisDESENVOLVIMENTO DO COMPILADOR PARA A LINGUAGEM SIMPLE
DESENVOLVIMENTO DO COMPILADOR PARA A LINGUAGEM SIMPLE Jeferson MENEGAZZO 1, Fernando SCHULZ 2, Munyque MITTELMANN 3, Fábio ALEXANDRINI 4. 1 Aluno 5ª fase do Curso de Ciência da Computação do Instituto
Leia maisCompiladores. Fabio Mascarenhas
Compiladores Fabio Mascarenhas 2017.1 http://www.dcc.ufrj.br/~fabiom/comp Introdução Compiladores x Interpretadores Offline x Online Um compilador transforma um programa executável de uma linguagem fonte
Leia maisUniversidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores
Universidade Federal de Goiás Bacharelado em Ciências da Computacão Compiladores 2013-2 Compilador para a Linguagem Cafezinho Especificação dos trabalhos: T2 (Geração da Representação Intermediária e Análise
Leia maisDesenvolvimento de Aplicações Desktop
Desenvolvimento de Aplicações Desktop Conceitos Básicos de Programação Professor: Charles Leite O Desenvolvimento de Programas A programação consiste em indicar como o computador (hardware) deve trabalhar
Leia maisParadigmas de Programação
Paradigmas de Programação Prof.: Edilberto M. Silva http://www.edilms.eti.br Aula 2 Linguagens de Programação Desenvolvimento e execução de programas Características de linguagens Execução de programas
Leia maisUm Compilador Simples. Definição de uma Linguagem. Estrutura de Vanguarda. Gramática Livre de Contexto. Exemplo 1
Definição de uma Linguagem Linguagem= sintaxe + semântica Especificação da sintaxe: gramática livre de contexto, BNF (Backus-Naur Form) Especificação Semântica: informal (textual), operacional, denotacional,
Leia maisAula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU
Aula 5 Oficina de Programação Introdução ao C Profa. Elaine Faria UFU - 2017 Linguagem de Programação Para que o computador consiga ler um programa e entender o que fazer, este programa deve ser escrito
Leia maisConceitos de Linguagens de Programação
Conceitos de Linguagens de Programação Aula 03 Processo de Compilação Edirlei Soares de Lima Métodos de Implementação Arquitetura de Von Neumann: A linguagem de máquina de um computador
Leia maisINFORMÁTICA: Informação automática
INTRODUÇÃO INFORMÁTICA: Informação automática Definição: é a ciência que estuda o tratamento automático e racional da informação (encarregada pelo estudo e desenvolvimento de máquinas e métodos para processar
Leia maisLinguagens de Programação
Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Linguagens de Programação DCA0800 - Algoritmos e Lógica de Programação Heitor Medeiros 1 Tópicos da aula
Leia maisAplicação. Programa Linguagem de Alto Nível. Programa em Linguagem Assembly. Programa em Linguagem Máquina
Níveis de Abstracção Nível 5 Nível 4 Nível 3 Nível 2 Nível 1 Nível 0 Aplicação Programa de Alto Nível Programa em Assembly Programa em Máquina Micro-programa em de Transferência de Registos Sistema Digital
Leia maisAlgoritmos e Programação
Universidade Federal do Vale do São Francisco Curso de Engenharia da Produção / Elétrica Parte 04 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav
Leia maisUniversidade Estadual da Paraíba - UEPB Curso de Licenciatura em Computação
Universidade Estadual da Paraíba - UEPB Curso de Licenciatura em Computação Análise Semântica Disciplina: Compiladores Equipe: Luiz Carlos dos Anjos Filho José Ferreira Júnior Compiladores Um compilador
Leia maisFERRAMENTA DE AUXÍLIO AO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE INTEGRANDO TECNOLOGIAS OTIMIZADORAS
FERRAMENTA DE AUXÍLIO AO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE INTEGRANDO TECNOLOGIAS OTIMIZADORAS Acadêmico: Roger Anderson Schmidt Orientador : Marcel Hugo Supervisor : Ricardo de Freitas Becker Empresa
Leia maisInformática I. Aula 9. Aula 9-17/05/2006 1
Informática I Aula 9 http://www.ic.uff.br/~bianca/informatica1/ Aula 9-17/05/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação
Leia maisProgramação: Compiladores x Interpretadores PROF. CARLOS SARMANHO JR
Programação: Compiladores x Interpretadores PROF. CARLOS SARMANHO JR Introdução Compiladores e interpretadores são formas de tradução de um código geralmente de alto nível (escrito em uma linguagem de
Leia maisEstrutura e funcionamento básico de um computador
Estrutura e funcionamento básico de um computador O que é um computador? Um computador é uma máquina composta por um conjunto de dispositivos electrónicos e electromecânicos capazes de processar informação.
Leia maisTratamento dos Erros de Sintaxe. Adriano Maranhão
Tratamento dos Erros de Sintaxe Adriano Maranhão Introdução Se um compilador tivesse que processar somente programas corretos, seu projeto e sua implementação seriam grandemente simplificados. Mas os programadores
Leia maisFerramentas Programação. UDESC - Prof. Juliano Maia 1
Ferramentas Programação UDESC - Prof. Juliano Maia 1 Índice Seção 1 Linguagens de Programação Seção 2 Interpretador Seção 3 Compilador / Linkeditor Seção 4 Ambientes de Desenvolvimento UDESC - Prof. Juliano
Leia maisAnálise Sintática. Eduardo Ferreira dos Santos. Outubro, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 18
Análise Sintática Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Outubro, 2016 1 / 18 Sumário 1 Introdução 2 Derivações 2 / 18 1 Introdução 2 Derivações 3 /
Leia maisTecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2)
Tecnólogo em Análise e Desenvolvimento de Sistemas Sistemas Operacionais (SOP A2) Conceitos de Hardware e Software Referências: Arquitetura de Sistemas Operacionais. F. B. Machado, L. P. Maia. Editora
Leia maisCapítulo 1 Linguagens e processadores
1. Linguagens Capítulo 1 Linguagens e processadores 2. Processamento de Linguagens: DI-UBI 2017/2018 1/28 Linguagens Linguagens Processamento de Linguagens: DI-UBI 2017/2018 2/28 Linguagens 1. Definição
Leia maisMemória. Arquitetura de Von Neumann. Universidade do Vale do Rio dos Sinos Laboratório I Prof.ª Vera Alves 1 CPU. Unidade de controle ULA
Universidade do Vale do Rio dos Sinos Laboratório I Prof.ª Vera Alves 1 Arquitetura de Von Neumann CPU Unidade de controle Unidade de entrada Unidade de saída ULA Von Neumann era um gênio. Falava muitos
Leia maisCompiladores. Bruno Lopes. Bruno Lopes Compiladores 1 / 32. Instituto de C
ompiladores Introdução Bruno Lopes Bruno Lopes ompiladores 1 / 32 Apresentação Em que período estão? O quanto sabem de programação? Quais linguagens? O quanto sabem de unix? O quanto sabem de Linguagens
Leia maisMC-102 Aula 01. Instituto de Computação Unicamp
MC-102 Aula 01 Introdução à Programação de Computadores Instituto de Computação Unicamp 2016 Roteiro 1 Por que aprender a programar? 2 Hardware e Software 3 Organização de um ambiente computacional 4 Algoritmos
Leia maisParadigmas de Linguagem de Programação. Aspectos Básicos
Paradigmas de Linguagem de Programação Aspectos Básicos Introdução Nesta segunda etapa de nossos estudos, veremos: aspectos básicos de programa e linguagem de programação; revisão de conceitos de compilador
Leia maisCompiladores. Prof. Bruno Moreno
Compiladores Prof. Bruno Moreno Apresentação - Professor Bruno Neiva Moreno Graduado em Ciência da Computação (UFPB) 2004 a 2009 Bolsista PIBIC/CNPq LARHENA - Laboratório de Recursos Hídricos e Engenharia
Leia maisTÉCNICO EM MANUTENÇÃO E SUPORTE EM INFORMÁTICA FORMA SUBSEQUENTE. Professora: Isabela C. Damke
TÉCNICO EM MANUTENÇÃO E SUPORTE EM INFORMÁTICA FORMA SUBSEQUENTE Professora: Isabela C. Damke isabeladamke@hotmail.com Linguagem de Programação Uma linguagem de programação é um conjunto de símbolos (
Leia maisIntrodução à Computação
Introdução à Computação Jordana Sarmenghi Salamon jssalamon@inf.ufes.br jordanasalamon@gmail.com http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda
Leia maisInformática I. Aula 9. Aula 9-27/09/2006 1
Informática I Aula 9 http://www.ic.uff.br/~bianca/informatica1/ Aula 9-27/09/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação
Leia maisConstrução de Compiladores. Capítulo 1. Introdução. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2014.
Construção de Compiladores Capítulo 1 Introdução José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2014.2 1/22 1 Linguagens de programação 2 Compilação 2/22 Tópicos 1
Leia maisProgramação de Computadores I Introdução PROFESSORA CINTIA CAETANO
Programação de Computadores I Introdução PROFESSORA CINTIA CAETANO Introdução Resolução de problemas Encontrar uma maneira de descrever este problema de uma forma clara e precisa. Encontremos uma seqüência
Leia maisCompiladores Aula 1. Celso Olivete Júnior.
Aula 1 Celso Olivete Júnior olivete@fct.unesp.br Tópicos da disciplina Introdução à compilação Analisador léxico Analisador sintático descendente Analisador sintático ascendente Análise semântica Geração
Leia maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Linguagem de Montagem e Linguagem de Máquina Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Conceitos básicos Linguagem/código
Leia maisProgramação de Computadores
Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Paradigmas para linguagens de Programação
Leia maisComo construir um compilador utilizando ferramentas Java
Como construir um compilador utilizando ferramentas Java p. 1/2 Como construir um compilador utilizando ferramentas Java Aula 1 - Introdução Prof. Márcio Delamaro delamaro@icmc.usp.br Como construir um
Leia maisSistema Computacional
Algoritmos e Lógica de Programação Conceitos Básicos Abstração Reinaldo Gomes reinaldo@cefet-al.br O que é um? Integração de componentes atuando como uma entidade, com o propósito de processar dados, i.e.
Leia maisAlgoritmos e Técnicas de Programação. Professora Luciana Faria
Algoritmos e Técnicas de Programação Professora Luciana Faria luciana.faria@ifs.ifsuldeminas.edu.br Conceitos Básicos Computadores??? Máquina composta de elemento físicos do tipo eletrônico É uma máquina
Leia maisInformática I. Aula Aula 18-29/10/2007 1
Informática I Aula 18 http://www.ic.uff.br/~bianca/informatica1/ Aula 18-29/10/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript
Leia maisINTRODUÇÃO À PROGRAMAÇÃO. Introdução. Sérgio Carlos Portari Júnior
INTRODUÇÃO À PROGRAMAÇÃO Introdução Sérgio Carlos Portari Júnior Sergio.junior@uemg.br TÓPICOS ABORDADOS Comparação homem x computador Entendendo o computador Linguagens de Programação Tipos de traduções
Leia maisProgramação de Computadores
Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Conceito de Algoritmo Pseudocódigo
Leia maisProf. Sandro Wambier
Prof. Sandro Wambier São elementos da Arquitetura de um computador: conjunto de instruções de um processador, os modos de endereçamentos, o tipo e tamanho dos dados manipulados pelo processador, ex.: Intel
Leia maisCompiladores. Eduardo Ferreira dos Santos. Fevereiro, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 38
Compiladores Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Fevereiro, 2017 1 / 38 Sumário 1 Compiladores 2 Linguagens de programação 3 Ciência dos compiladores
Leia maisPROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95
PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95 Exercícios de revisão Lista 01: a) Monte um mapa conceitual indicando as relações entre os seguintes conceitos, no contexto do assunto visto em aula:
Leia maisComputadores podem ser úteis em problemas que envolvem: Grande número de dados. Grande número de cálculos. Complexidade. Precisão.
O uso do computador Computadores podem ser úteis em problemas que envolvem: Grande número de dados. Grande número de cálculos. Complexidade. Precisão. Exemplos: Modelos meteorológicos. Cálculo estrutural.
Leia maisLembrando análise semântica. Compiladores. Implementação de esquemas de tradução L-atribuídos. Exemplo de implementação top-down (1)
Lembrando análise semântica Compiladores Geração de código intermediário (1) Parser Bottom-up: squema S-atribuído sem problema Apenas atributos sintetizados squema L-atribuído: ok, mas deve-se usar variáveis
Leia maisEderson Luiz da Silva Ciência da Computação. Algoritmos e Programação
Ederson Luiz da Silva Ciência da Computação Algoritmos e Programação Linguagem de programação Linguagem de Programação Linguagem de máquina http://www.assemblyprogressivo.net/p/curso.html Linguagem de
Leia maisLinguagem C. Eliane Pozzebon
Linguagem C Eliane Pozzebon Material de Apoio de C Site da disciplina: http://www.univasf.edu.br/~eliane.pozzebon Slides de aulas Exercícios Dev-C++: um ambiente de programação interativo e gratuito para
Leia maisConceitos básicos sobre computadores (continuação)
SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Conceitos básicos sobre computadores (continuação) Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário O que é um computador e
Leia maisEspecificações Gerais do Compilador e Definição de FRANKIE
Especificações Gerais do Compilador e Definição de FRANKIE 1. Especificações Gerais do Compilador (Decisões de projeto) 2. Especificações da Linguagem Fonte Definição Informal Considerações Léxicas Considerações
Leia maisUniversidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES. Síntese. Prof. Geovane Griesang
Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES Síntese Prof. geovanegriesang@unisc.br Data 18/11/2013 Análise sintática Parte 01 25/11/2013 Análise sintática Parte 02
Leia maisProf. Adriano Maranhão COMPILADORES
Prof. Adriano Maranhão COMPILADORES LINGUAGENS: INTERPRETADAS X COMPILADAS Resumo: Linguagem compilada: Se o método utilizado traduz todo o texto do programa, para só depois executar o programa, então
Leia maisEA876 - Introdução a Software de Sistema
A876 - Introdução a Software de Sistema Software de Sistema: conjunto de programas utilizados para tornar o hardware transparente para o desenvolvedor ou usuário. Preenche um gap de abstração. algoritmos
Leia maisProgramação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação
Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Programação em C Variáveis e Expressões DCA0800 Algoritmos e Lógica de Programação Heitor Medeiros Florencio
Leia maisTÉCNICO DE INFORMÁTICA - SISTEMAS
782 - Programação em C/C++ - estrutura básica e conceitos fundamentais Linguagens de programação Linguagem de programação são conjuntos de palavras formais, utilizadas na escrita de programas, para enunciar
Leia mais