Algoritmos e Programação

Documentos relacionados
Linguagens de Programação

Linguagens de Programação Classificação

Linguagem C. Eliane Pozzebon

PROGRAMAÇÃO I. Introdução

Programação I A Linguagem C. Prof. Carlos Alberto

Sistema Computacional

a) Computador b) Estrutura do sistema i. Hardware ii.software c) Linguagens de Programação i. Paradigmas e Programação 1.

Construção de Compiladores. Capítulo 1. Introdução. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2014.

Introdução à Computação

Algoritmos. Prof. Jonatas Bastos Site:

Compiladores. Motivação. Tradutores. Motivação. Tipos de Tradutores. Tipos de Tradutores

Introdução a Ciência da Computação

Conversões de Linguagens: Tradução, Montagem, Compilação, Ligação e Interpretação

Programação: Compiladores x Interpretadores PROF. CARLOS SARMANHO JR

Métodos de implementação de linguagens. Kellen Pinagé

Introdução à Computação para Engenharia MAC2166 Prof. Dr. Paulo Miranda IME-USP. Aula 1 Introdução à Computação

Conceitos de Linguagens de Programação

Introdução à Computação: Máquinas Multiníveis

Algoritmos e Programação

Infraestrutura de Hardware. Funcionamento de um Computador

Compiladores. Introdução à Compiladores

Desenvolvimento de Aplicações Desktop

Projeto de Compiladores

Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES. Introdução. Geovane Griesang

Algoritmos e Programação

Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior

AULA 03: FUNCIONAMENTO DE UM COMPUTADOR

Linguagens de máquina, linguagens simbólicas e linguagens de alto nível

Introdução à Programação. Ceça Moraes

Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza

Linguagens de Programação

Compiladores. Introdução

Introdução Computador Hardware Histórico e Evolução Linguagem de Programação Princípios Básicos

Paradigmas de Programação

3. Linguagem de Programação C

Programação de Computadores

Existem três categorias principais de linguagem de programação: linguagem de máquina, linguagens assembly e linguagens de alto nível.

Memória. Arquitetura de Von Neumann. Universidade do Vale do Rio dos Sinos Laboratório I Prof.ª Vera Alves 1 CPU. Unidade de controle ULA

Algoritmo de Programação. Aula1

Arquitetura e Organização de computadores

Programação de Computadores:

Introdução à Programação. Conceitos Básicos de Programação

Introdução à Programação. Prof. Gustavo Callou

Introdução à Computação

Programação de Computadores IV. Introdução a Linguagens de Programação Simone Martins SLIDES CEDIDOS POR BRUNO MARQUES 1

COMPILAÇÃO. Ricardo José Cabeça de Souza

Introdução a Ciência da Computação

Linguagem C Princípios Básicos (parte 1)

Linguagem de Programação

Resolução de Problemas com Computador. Resolução de Problemas com Computador. Resolução de Problemas com Computador

Compiladores. Eduardo Ferreira dos Santos. Fevereiro, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 38

Introdução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Projeto de Compiladores

Sistemas Operacionais

Introdução à plataforma Java

GFM015 Introdução à Computação

Noções de compilação

Unidade de Controle. UC - Introdução

Introdução. (Aula 2) Organização Estruturada de Computadores

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU

Introdução (Aula 2) Introdução Arquitetura de Hardware. Organização Estruturada de Computadores. Introdução Conceitos (2) Introdução Conceitos (1)

Autômatos e Linguagens

Introdução ao Python. Programa Computacional

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 06

Linguagens de Programação. Roberto Willrich INE- CTC-UFSC URL:

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2)

Arquitetura de Computadores. Conjunto de Instruções

Transcriçã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 1 Introdução à Linguagem C Introdução Origem Características 2 1

Introdução Uma linguagem de programação é um vocabulário e um conjunto de regras gramaticais usadas para escrever programas de computador. Esses programas instruem o computador a realizar determinadas tarefas específicas. Cada linguagem possui um conjunto único de palavras-chaves (palavras que ela reconhece) e uma sintaxe (regras) específica para organizar as instruções dos programas. 3 Introdução Os programas de computador podem ser escritos em várias linguagens de programação, algumas diretamente compreensíveis pelo computador e outras que exigem passos de tradução intermediária. As linguagens de programação podem ser divididas em três tipos, com relação à sua similaridade com a linguagem humana: Linguagem de máquina; Linguagem simbólica; Linguagem de alto nível. 4 2

Linguagem de máquina (machine language) É a linguagem de mais baixo nível de entendimento pelo ser humano e a única, na verdade, entendida pelo processador (UCP). É constituída inteiramente de números, o que torna praticamente impossível entendê-la diretamente. Cada UCP tem seu conjunto único de instruções que definem sua linguagem de máquina, estabelecido pelo fabricante do chip. Uma instrução típica em linguagem de máquina seria algo como: 0100 1111 1010 Essa linguagem é também classificada como uma linguagem de primeira geração. 5 Linguagem simbólica (assembly) É a linguagem de nível imediatamente acima da linguagem de máquina. Ela possui a mesma estrutura e conjunto de instruções que a linguagem de máquina, porém permite que o programador utilize nomes (chamados mnemônicos) e símbolos em lugar de números. A linguagem simbólica é também única para cada tipo de UCP, de forma que um programa escrito em linguagem simbólica para uma UCP poderá não ser executado em outra UCP de uma família diferente. Nos primórdios da programação todos os programas eram escritos nessa linguagem. 6 3

Linguagem simbólica (assembly) Hoje a linguagem simbólica, é utilizada quando a velocidade de execução ou o tamanho do programa executável gerado são essenciais. A conversão da linguagem simbólica para a linguagem de máquina se chama montagem, e é feito por um programa chamado montador (ou assembler). Uma típica instrução em linguagem simbólica seria: ADD A,B Essa linguagem é também classificada como linguagem de segunda geração, e, assim como a linguagem de máquina, é considerada uma linguagem de baixo nível. 7 Linguagem de alto nível São as linguagens de programação que possuem uma estrutura e palavras-chave que são mais próximas da linguagem humana. Tornando os programas mais fáceis de serem lidos e escritos. Esta é a sua principal vantagem sobre as linguagens de nível mais baixo. Os programas escritos nessas linguagens são convertidos para a linguagem de baixo nível através de um programa denominado compilador ou de um interpretador. Uma instrução típica de uma linguagem de alto nível é: if (A>10) then A:=A-7; 8 4

if (A>10) then A:=A-7 ADD A,B 1011 0110 0011 9 As Origens da linguagem C A linguagem de programação C foi originalmente projetada para ser implementada no sistema operacional UNIX em um DEC PDP-11; C é o resultado de um processo de desenvolvimento que começou com uma linguagem mais antiga, chamada BCPL; A linguagem BCPL influenciou uma linguagem chamada B, no final da década de 60; No início da década de 70, B levou ao desenvolvimento da linguagem C. 10 5

As Origens da linguagem C O padrão C foi a versão fornecida com o sistema operacional UNIX versão 5; Com a popularidade dos microcomputadores, um grande número de implementações de C foi criada; Para remediar a falta de padrão da linguagem C, o ANSI (American National Standards Institute) estabeleceu, em 1983, um comitê para criar um padrão definitivo da linguagem C. 11 Características da Linguagem C Linguagem dita de médio nível; Linguagem Estrutural; Case sensitive (A a); Fácil portabilidade entre hardwares e sistemas operacionais; Alta interatividade com o sistema operacional; Código compacto e rápido; Requer mais do programador. 12 6

Interpretação versus Compilação Um interpretador lê linha a linha do código-fonte, o examina sintaticamente e o executa; Um compilador lê todo programa e o converte em código-objeto (código de máquina) e pronto! Portanto, a linguagem C é compilada; O Portugol é Interpretado; A linguagem C possui uma característica peculiar: Fácil portabilidade. Os programas feitos nesta linguagem podem ser compilados para diversas plataformas (hw e sw). 13 Sopa de letras das linguagens de programação 14 7

15 8