Sobre C. Linguagem de Programação C



Documentos relacionados
Prof. Luis Nícolas de Amorim Trigo

Linguagem de Programação I. Aula 05 Linguagem C

Conceitos Básicos da Linguagem C. Prof. Leonardo Barreto Campos 1

Introdução à Linguagem C/C++ Parte I

INTRODUÇÃO À LINGUAGEM C/C++

O COMPUTADOR. Introdução à Computação

ARQUITETURA DE COMPUTADORES. Rogério Spindula Rosa

Introdução. Capítulo Breve sinopse

Algoritmo e Técnica de Programação - Linguagem C

Introdução às Linguagens de Programação

Programação Estruturada I

Resumo da Introdução de Prática de Programação com C. A Linguagem C

Conceitos básicos de programação

AULA 2: INTRODUÇÃO A LINGUAGEM DE C. Curso: Ciência da Computação Profª.: Luciana Balieiro Cosme

Conceitos Básicos de C

Curso Técnico em Redes

Conceitos básicos da linguagem C

É uma linguagem portável.(bom... desde de que siga algum padrão: ISO, ANSI)

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

Convertendo Algoritmos para a Linguagem C

O que é um programa? Programa é uma lista de instruções que descrevem uma tarefa a ser realizada pelo computador.

Introdução a Informática. Prof.: Roberto Franciscatto

PROGRAMAÇÃO ORIENTADA A OBJETOS EM JAVA*

Programação científica C++

LINGUAGEM C UMA INTRODUÇÃO

Linguagens de Programação

Introdução a Linguagem C

Linguagens de. Aula 01. Profa Cristiane Koehler

MC102 Algoritmos e Programação de Computadores 2ª Aula Programa, entrada e saída de dados

INTRODUÇÃO À PROGRAMAÇÃO BCC 201 TURMAS 31, 32 E AULA TEÓRICA 2 PROF. MARCELO LUIZ SILVA (R E D)

Construção de Compiladores. Construção de Compiladores. Motivação. Motivação. Contexto Histórico. Classificações: Gerações 09/03/2010

A Linguagem Algorítmica Estrutura de Repetição. Ex. 2

Linguagem de Montagem

Programação de Computadores III

Algoritmos e Programação Estruturada

LINGUAGENS E PARADIGMAS DE PROGRAMAÇÃO. Ciência da Computação IFSC Lages. Prof. Wilson Castello Branco Neto

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Fonte (livro-texto): Conceitos de Linguagens de Programação, 4ed. Robert W. Sebesta

Programação Estruturada Aula - Introdução a Linguagem C

ENIAC. Introdução aos Computadores e à Programação (Noções Básicas)

INF1621 Linguagens de Programação I

Figura 01 Kernel de um Sistema Operacional

INTRODUÇÃO ÀS LINGUAGENS DE PROGRAMAÇÃO

5 Apresentando a linguagem C

Algoritmos e Linguagem de Programação I

Revisão de Banco de Dados

Introdução. Hardware X Software. Corpo Humano Parte Física. Capacidade de utilizar o corpo em atividades especificas explorando seus componentes

Módulo 1 Apresentação do Histórico e das Características Básicas da Linguagem C

O Processo de Programação

Parte II Introdução a Linguagens de Programação

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Sistemas Operacionais

Introdução. Sumários. Objectivos da cadeira. História das linguagens de programação. Classificação das Linguagens de programação

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias

Algoritmos e Programa o Departamento de Inform tica

COMPILADORES E INTERPRETADORES

Linguagens de Programação. Introdução. Carlos Bazilio

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

3 Revisão de Software

CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS. João Gabriel Ganem Barbosa

Breve Histórico & Conceitos Básicos

Linguagem C. TGSI Lógica de Programação / Linguagem C Prof. Marcos Roberto

PROGRAMA DE DISCIPLINA

Curso de Linguagem C

Sistemas Operacionais

Programação de Computadores

Fundamentos de Microinformática. Ricardo José Cabeça de Souza 2010 Fundamentos 3

Fundamentos de Java. Prof. Marcelo Cohen. 1. Histórico

UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMATICA DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO LINGUAGENS DE APLICAÇÃO COMERCIAL SILAS QUEIROZ SILVA

BREVE HISTÓRIA DA LINGUAGEM FORTRAN

Gerenciador de Log. Documento Visão. Projeto Integrador 2015/2. Engenharia de Software. Versão 2.0. Engenharia de Software

Programas simples em C

Introdução a Computação

Linguagem de Programação I

UNIVERSIDADE DO OESTE DE SANTA CATARINA CAMPUS DE SÃO MIGUEL DO OESTE

Organização e Arquitetura de Computadores I. de Computadores

Como é o desenvolvimento de Software?

Disciplina: Organização de computadores

UMA BREVE INTRODUÇÃO AO ESTUDO E IMPLEMENTAÇÃO DE COMPILADORES

Introdução à Programação. Adair Santa Catarina Curso de Ciência da Computação Unioeste Campus de Cascavel PR

Paradigmas de Linguagens de Programação

Introdução a lógica de programação. Aula 02: Linguagens de Programação e Introdução ao Visual C# Express

Aula teórica 3. Tema 3.Computadores e linguagens Linguagens de Programação Compilação e linkagem LP Java. Preparado por eng.

Introdução à Linguagem

1 INTRODUÇÃO 1.1 CONCEITO DE PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO

UFRPE Prof. Gustavo Callou

Apostila da disciplina Introdução à Engenharia de Software Professor: Sandro Melo Faculdades São José Curso de Tecnologia de Sistemas de Informação

MC-102 Aula 01. Instituto de Computação Unicamp

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

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação

1. Apresentação Objetivos

Material 5 Administração de Recursos de HW e SW. Prof. Edson Ceroni

Curso de Java. Orientação a objetos e a Linguagem JAVA. TodososdireitosreservadosKlais

Computador Digital Circuitos de um computador (Hardware)

Introdução à Arquitetura de Computadores. Renan Manola Introdução ao Computador 2010/01

Paradigmas de Programação

Programação de Computadores. Turma CI-180-B. Josiney de Souza.

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 1. Cursos de Computação

Transcrição:

Sobre C Linguagem de Programação C

As Origens de C Ken Thompson e Dennis Ritchie (da esquerda pra direita), os criadores das linguagens B e C, respec4vamente: 2

As origens de C Nas palavras de D. Ritchie: C é ardilosa, imperfeita e um enorme sucesso. Enquanto que acidentes de história seguramente ajudaram, ela evidentemente satisfez uma necessidade por uma linguagem de implementação de sistema eficiente o bastante para descartar a linguagem assembler, contudo suficientemente abstrata e fluente para descrever algoritmos e interações em uma larga variedade de ambientes. 3

Linha do Tempo Ken Thompson criou a linguagem B em 1969-1970; ela foi derivada diretamente da BCPL de Martin Richards. Dennis Ritchie transformou a B em C durante 1971-1973, mantendo a maioria da sintaxe da B enquanto adicionava tipos e muitas outras mudanças, e escreveu o primeiro compilador para a linguagem. Ritchie, Alan Snyder, Steven C. Johnson, Michael Lesk e Thompson contribuíram com idéias para a linguagem durante 1972-1977, sendo que o compilador portável de Johnson permanece amplamente usado. Durante este período, a coleção de rotinas cresceu consideravelmente, graças a aquelas pessoas e muitas outras no Bell Laboratories. 4

Linha do Tempo Em 1978, Brian Kernighan e Ritchie escreveram o livro que se tornou a definição da linguagem por vários anos. Começando em 1983, o comitê ANSI X3J11 padronizou a linguagem. Especialmente notável em manter seus esforços na trilha foram seus funcionários Jim Brodie, Tom Plum, P. J. Plauger e os sucessivos redatores do projeto, Lary Rosler e Dave Prosser. 5

Evolução 6

Porque aprender C? Portabilidade Próxima a linguagem de máquina Código legado Popularidade 7

C - Características Nível Médio Estruturada Para programadores Programação de sistemas 8

Linguagem de Nível Médio 9

Linguagem Estruturada C é normalmente referenciada como linguagem estruturada C não permite que blocos ou funções sejam definidos dentro de outras funções O termo linguagem estruturada em bloco não é aplicável a C Não Estruturada FORTRAN Basic Cobol Estruturadas Pascal Ada C++ / C Modula- 2 10

Linguagem para Programadores C foi criada, influenciada e testada em campo por programadores profissionais Para o programador: Poucas restrições Poucas reclamações Estrutura de bloco Funções Isoladas Conjunto compacto de palavras-chave Eficiência aproximada de assembly Estrutura de ALGOL ou Modula-2 11

Linguagem para Programação de Sistemas Inicialmente C era somente usada na programação de componentes de Sistemas Operacionais Interpretadores Editores Compiladores Gerenciamento de BD O próprio SO 12

Estrutura Geral de um Programa em C 13

Funções Todo programa em C consiste em uma ou mais funções A única função que todo programa C deve conter é a função main() Função a ser chamada quando a execução começa 14

Funções 15

Exemplo 16

Edição, compilação e Link Edição Compilar um programa em C consiste neste três passos: Criar o programa Compilar o programa Linkeditar o programa com as funções necessárias da biblioteca 17

Edição, compilação e Link Edição 18

Conceitos Código-fonte: o texto de um programa que um usuário pode ler, normalmente interpretado como o programa. Entrada do compilador Código-objeto: tradução do código-fonte de um programa em código de máquina que o computador pode ler e executar diretamente. Entrada para o linkeditor Linkeditor: um programa que une funções compiladas separadamente em um programa. A saída é um programa executável 19

Conceitos Biblioteca: arquivo contendo as funções padrão que seu programa pode usar Tempo de compilação: eventos que ocorrem enquanto seu programa está sendo compilado. Ex. erro de sintaxe Tempo de execução: os eventos que ocorrem enquanto o seu programa é executado 20

C versus C++ C++ é uma versão estendida e melhorada de C Projetada para suportar programação orientada a objetos Porém não impõe paradigma 21

Leitura Recomendada C Completo e Total capítulo 1 D. Ritche, O Desenvolvimento da Linguagem C*. Histórico das Linguagens de Programação Wikipedia: Ling. C 22

Referências 1. D. M. Ritchie; O Desenvolvimento da Linguagem C 2. hmp://www.caloni.com.br/blog/archives/historia- da- linguagem- c- parte- 1 3. hmp://www.caloni.com.br/blog/archives/historia- da- linguagem- c- parte- 2 4. History of programming languages 5. Computer Languages History 6. Jones, Derek M. (2008) " The New C Standard: An Economic and Cultural Commentary." hmp://en.wikipedia.org/wiki/ansi_c 23