• Nenhum resultado encontrado

Introdução à Computação

N/A
N/A
Protected

Academic year: 2021

Share "Introdução à Computação"

Copied!
41
0
0

Texto

(1)

Introdução à Computação

Conceitos Fundamentais de Computação

Paulo Henrique Ribeiro Gabriel phrg@ufu.br

Faculdade de Computação Universidade Federal de Uberlândia

(2)

Conteúdo

1 Conceitos Fundamentais

2 Breve História da Informática

(3)

Dados, Informação e Processamento de Dados (1/4)

Durante nosso dia-a-dia, executamos diversas operações que envolvem um processamento de dados:

I Ler um jornal

I Fazer um bolo a partir de uma receita I Resolver um problema matemático

Em todos esses casos, transformandodados existentes eminformações

Em outras palavras: entidades existentes, após convenientemente tratadas, são transformadas em novas entidades

(4)

Dados, Informação e Processamento de Dados (2/4)

Processamento

Conjunto de atividades que, atuando sobre entidades iniciais (entrada), geram outras entidades como resultado (ou as mesmos, sob outra forma), chamadas saída.

(5)

Dados, Informação e Processamento de Dados (3/4)

As entidades de entrada são chamadasdados e correspondem ao elementos conhecidos do problema

A entidade de saída é chamadainformaçãoe corresponde ao conjunto estruturado de dados

A informação pode ser totalmente nova ou pode ser apenas uma nova forma de representação dos dados

(6)

Dados, Informação e Processamento de Dados (4/4)

Processamento de Dados

Conjunto de operações que são aplicadas sobre determinadas dados para transformá-los em informação

(7)

Informática e Computadores (1/4)

Informática

Ciência que estuda métodos para o tratamento da informação por meios computacionais

(8)

Informática e Computadores (2/4)

Áreas da Informáticaa

a

Fonte: “Computing Curricula 2005: The Overview Report” (ACM)

1 Ciência da Computação 2 Engenharia da Computação 3 Sistemas de Informação 4 Tecnologia de Informação 5 Engenharia de Softwares

(9)

Informática e Computadores (3/4)

Computador

Computadores são dispositivos desenvolvidos para executar um conjunto de instruçõeslógicase aritméticas de maneira automática

Um conjunto (ou sequência) de instruções recebe o nome programa

Computadores podem ser mecânicos (analógicos) ou eletrônicos (digitais)

(10)

Informática e Computadores (4/4)

Usos do Computador 1 Processar dados 2 Realizar computação

(11)

Conteúdo

1 Conceitos Fundamentais

2 Breve História da Informática

(12)

Antes de 1800 (1/5)

A palavra “computação” vem do latim, computatìo,ónis

I Ato ou efeito de computar, fazer cálculos

Primeiros instrumentos de cálculo: dedos, pedras, nós Ábaco: cerca de 3000 a.C. (Babilônia)

(13)

Antes de 1800 (2/5)

Máquina de Anticítera

Desenvolvida na Grécia (cerca de 80 a.C.)

Conjunto de engrenagens e ponteiros

Permite calcular posição de corpos celestes

(14)

Antes de 1800 (3/5)

John Napier (1550–1617):

Matemático, físico e astrônimo escocês

Principal desenvolvedor dos logaritmos

Inventor dos Ossos de Napier: uma as primeiras calculadoras

I Aritmética decimal I Multiplicações

(15)

Antes de 1800 (4/5)

Blaise Pascal (1623–1662): Matemático, físico, inventor, escritor e teólogo francês Defensor do método científico Desenvolveu diversas

calculadoras mecânicas (Pascalinas)

(16)

Antes de 1800 (5/5)

Trabalhos semelhantes foram desenvolvidos por Gottfried Wilhelm Leibniz (1646–1716), filósofo, cientista, matemático, diplomata e bibliotecário alemão

I Leibniz também incentivou o uso do sistema binário para desenvolver cálculos

Mais recentemente, descobrou-se que Wilhelm Schickard

(1592–1635), professor e astrônomo alemão, construiu um máquinas antes de Pascal e Leibniz

(17)

Século XIX (1/3)

Joseph-Marie Jacquard (1752–1834), Mecânico e inventor francês Desenvolveu o tear mecânico Programado por uma série de cartões perfurados, cada um deles controlando um único movimento da lançadeira

(18)

Século XIX (2/3)

Charles Babbage (1791–1871): Cientista, matemático, filósofo, engenheiro britânico

Considerado o “pai dos computadores”

Trabalhou em dois mecanismos: 1 Máquina Diferencial:

resolução de equações polinômicas por meio de diferenças entre números

2 Máquina Analítica: projeto de

(19)

Século XIX (3/3)

Ada Augusta Byron, a Condessa de Lovelace (1815–1852):

I Matemática britânica, amiga de Babbage I Conhecida como a primeira programadora

I Escreveu um trabalho sobre a máquina de Babbage

William Stanley Jevons (1835–1882):

I Economista e lógico britânico

I Construiu uma máquina em para resolver problemas lógicos

I É considerada a primeira máquina desse tipo com poder suficiente para resolver um problema complicado mais rápido do que ele seria resolvido sem ela

Herman Hollerith (1860–1929):

(20)

De 1900 a 1939 (1/4)

Em 1919, E. O. Carissan (1880–1925), um tenente da infantaria francesa, projetou e construiu um mecanismo para fatorar inteiros e testar se eles são primos

O espanhol Spaniard Leonardo Torres y Quevedo (1852–1936) construiu alguns mecanismos de calcular eletromecânicos, incluindo um que jogava finais simples de jogos de xadrez

(21)

De 1900 a 1939 (2/4)

Em 1900, o matemático alemão David Hilbert (1862-1943) participou do Congresso Internacional de Matemáticos (International Congress of Mathematicians)

Propôs uma famosa lista de 23 problemas, dentre eles:

1 A matemática é completa, isto é, toda sentença matemática pode ser

provada ou refutada?

2 A matemática é consistente, isto é, é verdade que sentenças como

“0 = 1” não podem ser provadas por métodos válidos?

3 A matemática é decidível, isto é, existe um método mecânico que pode

ser aplicado a qualquer sentença matemática que é capaz de dizer se esta sentença é verdadeira ou não?

(22)

De 1900 a 1939 (3/4)

Em 1931, Kurt Gödel (1906–1978) respondeu a duas das questões de Hilbert

Ele mostrou que todo sistema formal suficientemente rico é ou inconsistente ou incompleto

Além disso, se um sistema axiomático é consistente, essa consistência não pode ser provada pelo sistema

(23)

De 1900 a 1939 (4/4)

Em 1936, Alan Turing (1912–1954) respondeu à terceira pergunta de Hilbert construindo um modelo formal de um computador (chamado de Máquina de Turing) e mostrando que há problemas que esta máquina não pode resolver

Um destes problemas é o conhecido “Problema da Parada”: dado um programa escrito em uma linguagem de programação, ele pára para todas as entradas?

(24)

Década de 1940 (1/5)

Cálculos de balística necessários durante a Segunda Guerra Mundial aceleraram o

desenvolvimento do computador eletrônico digital para uso geral Em Harvard, Howard H. Aiken (1900–1973) construiu, com o apoio da IBM, o computador eletromecânico Mark I em 1944

(25)

Década de 1940 (2/5)

A quebra de códigos também gerou projetos computacionais Alan Turing se envolveu na quebra de código da máquina alemã Enigma

O britânico construiu um computador para auxiliar na quebra de código, chamado de

(26)

Década de 1940 (3/5)

Após discussões com John Vincent Atanasoff (1904–1995), John William Mauchly

(1907–1980) e J. Presper Eckert Jr. (1919–1995) projetaram e construíram o ENIAC

Computador eletrônico de uso geral inicialmente pensado para auxiliar em cálculos para artilharia

(27)

Década de 1940 (4/5)

Em 1944, Mauchly, Eckert, and John von Neumann (1903–1957) já estavam trabalhando no desenvolvimento de um

computador eletrônico capaz de armazenar programas, o EDVAC O relatório de von Neumann, chamado “First Draft of a Report on the EDVAC” contém muitas das ideias ainda usadas por diversos computadores

(28)

Década de 1940 (5/5)

Enquanto isso, na Alemanha, Konrad Zuse (1910–1995) construiu, em 1941, a primeira calculadora para uso geral, o Z3 Controlada por um programa e operacional

(29)

Década de 1950

Grace Murray Hopper (1906–1992) criou a noção decompilador em 1951

John Backus e seus colaboradores desenvolveram o primeiro compilador de FORTRAN em 1957

Jack Kilby (1923–2005) e Robert Noyce (1927–1990) inventaram o circuito integrado em 1959

Edsger Dijkstra (1930–2002) criou um algoritmo eficiente para resolver o problema do caminho mínimo

Alan Turing introduziu, em 1952, o Teste de Turing, um dos primeiros esforços na área de Inteligência Artificial

(30)

Década de 1960 (1/2)

Na década de 1960, a Ciência da Computação se tornou uma disciplina por si só

No final dessa década, a ARPAnet, a precursora da Internet, começou a ser construída

Diversas novas linguagens de programação foram criadas, como BASIC

(31)

Década de 1960 (2/2)

A prova de corretude de programas usando métodos formais passou a ser mais importante durante essa década

Ted Hoff (1937– ) e Federico Faggin (1941– ), da Intel, projetaram o primeiro microprocessador (computador em um chip) entre 1969 e 1971

Uma base matemática rigorosa para análise de algoritmos se iniciou com o trabalho de Donald Knuth (1938– )

(32)

Década de 1970 (1/2)

O sistema operacional Unix foi desenvolvido nos laboratórios da Bell (EUA) por Ken Thompson (1943– ) e Dennis Ritchie (1941–2011)

I Base para diversos outros sistemas operacionais

Brian Kernighan (1942–) e Ritchie desenvolveram a linguagem de programação C

Outras linguagens de programação, como Pascal e Ada, foram desenvolvidas em seguida

(33)

Década de 1970 (2/2)

Houve um grande avanço em algoritmos e complexidade computacional

I Em 1971, Stephen Cook (1941– ) e Leonid Levin (1948–) publicaram um importante estudo sobre o assunto

Pouco tempo depois, Richard Karp (1931– ) mostrou que diversos problemas não podem ser resolvidos computacionalmente em tempo hábil

Whit Diffie (1944–) e Martin Hellman (1945–) publicaram um artigo que introduziu a teoria de criptografia de chave pública

(34)

Década de 1980 (1/2)

Finalmente, viu-se o crescimento do computador pessoal, em grande parte graças a Stephen Wozniak (1950– ) e Steven Jobs (1955–2011), fundadores da Apple Inc.

Em 1981, o primeiro

computador verdadeiramente portátil de sucesso entrou para o mercado, o Osborne I

(35)

Década de 1980 (2/2)

Ainda em 1980, a IBM planeja lançar seu computador pessoal

Faz um acordo com a Microsoft Corporation, que faz um contrato de licenciamento com a IBM e procura a Seattle Computers para comprar o seu sistema Q-DOS

I Posteriormente, rebatizado como MS-DOS

I Em 1985 Microsoft e IBM assinam acordo para desenvolvimento do Microsoft Windows 1.0

Em 1987, US National Science Foundation lança o NSFnet, outro precursor da Internet

(36)

Década de 1990 (1/2)

Em 1991, Guido van Rossum (1956– ) publica a primeira versão da linguagem Python

Surgimento do sistema operacional GNU/Linux

Sistemas distribuídos e computadores paralelos começam a se ternar comuns

Computação pessoal e Internet se consolidam Surge o primeiro Website (pode ser visto em:

https://www.w3.org/History/19921103-hypertext/ hypertext/WWW/TheProject.html)

(37)

Década de 1990 (2/2)

Leonard Adleman (1945– ) descreve trabalhos experimentais de computação utilizando DNA

Peter Shor (1955– ) desenvolve modelos teóricos de computação quântica

(38)

Década de 2000 em diante

Surgimento de redes sociais Advento da “computação móvel”

I Smartphones e Tablets

Consolidação dos sistemas distribuídos

I “Computação na nuvem”

(39)

Filmes Recomendados

Pirates of Silicon Valley (1999): Mostra o surgimento das empresas Apple e Microsoft

I http://www.imdb.com/title/tt0168122/

Revolution OS (2001): Documentário sobre sistemas operacionais e software livre

I http://www.imdb.com/title/tt0308808/

The Social Network (2010): História do Facebook

I http://www.imdb.com/title/tt1285016/

Codebreaker (2011): Biografia de Alan Turing

I http://www.imdb.com/title/tt2119396/

(40)

Conteúdo

1 Conceitos Fundamentais

2 Breve História da Informática

(41)

Exercício

Escreva um documento de 3 a 5 páginas sobre o seguinte tema: como a Informática pode auxiliar na área deFísica de Materiais?

O documento deve ser digital (feitos no Word, por exemplo) e entregues pelo Sistema Moodle até o dia da primeira avaliação Formatação do texto:

I Fonte: Arial, tamanho 12

I Margens: superior e esquerda de 3cm, inferior e direita de 2cm I Espaçamento entre linhas: 1,5

Referências

Documentos relacionados

Hoje o gasto com a saúde equivale a aproximada- mente 8% do Produto Interno Bruto (PIB), sendo que, dessa porcentagem, o setor privado gasta mais que o setor público (Portal

A tabela 25 apresenta os resultados brutos desta avaliação em relação à característica busca e a tabela 26 exibe o resultado ponderado para esta característica.. A tabela 27

O resultado é falso apenas quando todos os operadores forem falsos. v1 V2 v1

Dados um número inteiro n, n>0, e uma sequência com n números inteiros, determinar a soma dos inteiros positivos e a soma dos inteiros negativos da sequência.. Tabela

writelines(data): escreve cada elemento string da lista data na posição atual ou ao final do arquivo, dependendo do modo de abertura. Qualquer arquivo pode ser aberto e lido

• Tendo compreendido a real contribuição do trabalho, o avaliador finalmente verá o capítulo de revisão bibliográfica, para ver se os principais conceitos foram bem apresentados

• “A  idéia  era  construir  um  computador  para  realizar  vários  tipos  de  cálculos  de  artilharia  para  ajudar  as  tropas  aliadas  durante  a  II 

a) Usando a função sqrt(x) da biblioteca matemática da linguagem Python (import math) , escreva uma função que recebe as coordenadas cartesianas de dois pontos