Introdução a Matemática Computacional Introdução a Ciência da Computação Aquiles Burlamaqui UERN 2007.2 Introdução a Ciência da Computação Apresentação Formação Graduação: Ciência da Computação – UFRN Mestrado: UFRN – Dimap - Sistemas e Computação: Engenharia de Software Atuais Atividades Doutorando: UFRN – DCA – Sistemas Inteligentes. Pesquisador do Laboratório Natalnet Gerente dos Projetos (GIGA-VR,GT-MV,Jogos Massivos para TVDI) Gerente da Dynavideo Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Conteúdo Programático Unidade I Unidade II 1.Conceitos Fundamentais 2.Evolução histórica 3.A informação e sua representação: Os sistemas de numeração, representação de números inteiros e reais, codificação alfanumérica. 4.Conceitos básicos de eletrônica digital: Álgebra de Boole, portas lógicas. 5.Arquitetura Básica de Computador: cpu,memórias,dispositivos de E/S e barramento. 6.Arquitetura de Von Neumann. Unidade III 7.Noções Básicas sobre programação e paradigmas de Linguagens. 8.Visão geral sobre as áreas da Computação. Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Planejamento Carga horária: 90h SEGUNDAS das 7:00h as 12:20h Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Metodologia Aulas Teóricas-Práticas: Em todas as aulas haverão uma discussão inicial, onde serão expostos conceitos assim como atividades práticas que servirão como parâmetro para avaliação. Avaliação: A avaliação será feita de forma continua. E Baseada em três provas escritas. Assim como trabalhos em sala aula. Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Bibliografia J.Glenn Brookshear; Ciência da Computação - Uma Visão Abrangente; 7º Edição; Bookman. Internet www.google.com Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Motivação Por que estudar Ciência da Computação? Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Motivação Por que estudar Ciência da Computação? Ciência que fornece base cientifica para as aplicações computacionais existentes e as que viram a existir. Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Conceitos Fundamentais O que é um Computador ? Quem usa? Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Conceitos Fundamentais O que é um Computador ? 1. O que computa; calculador, calculista. 2. Máquina destinada ao processamento de dados; dispositivo capaz de obedecer a instruções que visam produzir certas transformações nos dados,com o objetivo de alcançar um fim determinado. Quem usa? Industrias, empresas, universidades, população em geral; Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Conceitos Fundamentais Três pilares Físico Lógico Humano Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Conceitos Fundamentais Três pilares Físico Hardware (CPU + Periféricos) Lógico Firmware (Instruções de Fábrica) Software (Programas) Algoritmo Humano Peopleware (Profissionais) Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Conceitos Fundamentais Algoritmo أبو عبد هللا محمد بن موسى الخوارزمي Abū ‘Abd Allāh Muḥammad ibn Mūsā alKhwārizmī Algorithmi de numero indorum Al-goreten (conceito que se pode aplicar aos cálculos) Definição: Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Conceitos Fundamentais Algoritmo أبو عبد هللا محمد بن موسى الخوارزمي Abū ‘Abd Allāh Muḥammad ibn Mūsā al-Khwārizmī Algorithmi de numero indorum Al-goreten (conceito que se pode aplicar aos cálculos) Definição: Receita de bolo Um algoritmo é uma seqüência não ambígua de instruções que é executada até que determinada condição se verifique. (wikipédia) Conjunto ordenado e não-ambíguo de passos executáveis que definem uma atividade finita.(Brookshear) Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Conceitos Fundamentais Algoritmo Exemplo (Ligar o Carro): Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Conceitos Fundamentais Algoritmo Exemplo (Ligar o Carro): Ligar o carro Pisar na embreagem Passar a primeira marcha Soltar a embreagem lentamente,enquanto pisa no acelerador. Algoritmo para fritar um ovo? Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Conceitos Fundamentais Algoritmo Calcular a média na disciplina? Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Conceitos Fundamentais Algoritmo Se não for seguido um formalismo, podemos ter problemas. Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Conceitos Fundamentais Algoritmo De modo a torná-lo não ambíguo uma formalização é necessária. Definição de regras de semântica e sintaxe. Linguagens de Programação Uma linguagem de programação é um método padronizado para expressar instruções para um computador. É um conjunto de regras sintáticas e semânticas usadas para definir um programa de computador. Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Como tudo começou ? Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Como tudo começou ? Necessidade de contar. Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 4000 a.C. - O Ábaco Chinês, Russo, japonês. Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1622 d.C. - A régua de cálculo William Oughtred Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1642 - A máquina de Blaise Pascal Rodas dentadas e engrenagens Muito caro Soma e subtração Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1672 - A Calculadora de Gottfried Leibnitz 4 operações Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1801 - O Tear Programável Joseph Marie Jacquard Cartões perfurados Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1822 - A Máquina que "ficou no papel“ Charles Babbage Maquina das diferenças Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1834 - Charles Babbage máquina analítica “Pai do Computador” Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1847 - A teoria de George Boole “A Análise Matemática da Lógica” “Uma Investigação das Leis do Pensamento“ Inventor da lógica matemática Introduziu o conceito dos códigos binários Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1890 – Hermann Hollerith Censo americano 1896 Fundou a Tabulation Machine Company Computing Tabulation Recording Company IBM - Internacional Business Machine Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1948 - Teoria da Informação Claude Shannon (MIT - Instituto de Tecnologia de Massachusetts, Bell Laboratories) Semelhanças entre números binários com um circuito elétrico. binary digit Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1ª Geração: tecnologia de válvulas (1940 1955) 2ª Geração: a utilização do transistor (19551965) 3ª Geração: os circuitos integrados (1965-1980) 4ª Geração: circuitos de larga escala (19801990) 5ª Geração: Ultra Large Scale Integration (1990 - hoje) Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1 GERAÇÃO Componente eletrônico - válvulas Tempo de Operação : milisegundos (seg) Tamanho : grande Pouco confiáveis Poucas horas de funcionamento Monoprogramáveis Programados em linguagem de máquina Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1ª Geração: tecnologia de válvulas (1940 - 1955) 1943 - Mark I IBM com a marinha Norte-Americana 17 metros de comprimento 2 metros e meio de altura 5 toneladas 760.000 peças 800 km de fios 420 interruptores para controle realizava uma soma em 0,3 s realizava uma multiplicação em 0,4 s e uma divisão em cerca de 10 s Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1ª Geração: tecnologia de válvulas (1940 - 1955) 1943 - Mark I Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1ª Geração: tecnologia de válvulas (1940 - 1955) 1945 - ENIAC Eletronic Numerical Integrator and Calculator Utilizava válvulas eletrônicas Manipulação em Forma decimal Programação difícil Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1ª Geração: tecnologia de válvulas (1940 - 1955) 1945 - ENIAC Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1ª Geração: tecnologia de válvulas (1940 - 1955) 1945 - EDVAC Electronic Discrete Variable Computer Mesmo tamanho que o ENIAC Cem vezes mais memória interna que o ENIAC Utilização dos códigos binários Programação com a linha de retardo Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1ª Geração: tecnologia de válvulas (1940 - 1955) 1945 - EDVAC Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1ª Geração: tecnologia de válvulas (1940 - 1955) 1951 - UNIVAC I Eletronic Numerical Integrator and Calculator Primeiro Computador Comercial (15) Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 1ª Geração: tecnologia de válvulas (1940 - 1955) 1954 - IBM 650 Eletronic Numerical Integrator and Calculator Media 1,5 m X 0,9 m X 1,8 m e tinha uma massa de 892 Kg. 50 / 2.000 unidades Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 2 GERAÇÃO Surgiu em 1958 Computador mais popular foi o IBM 1401 Componente eletrônico - transistor (SSI e MSI) 100 vezes menor Não precisava aquecer para funcionar Consumo menor de energia Mais rápido e confiável Tempo de operação ; microsegundos (10-6 seg) Auxílio no controle de E/S (surgimento dos discos magnéticos) Monoprogramável Linguagem assembler Surgimento do primeiro minicomputador : PDP-5 ($ 120.000) Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 2ª Geração: a utilização do transistor (1955-1965) TRADIC, da Bell Laboratories Menor aquecimento, Maior poder de cálculo Confiabilidade Consumo de energia bem menor Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 2ª Geração: a utilização do transistor (1955-1965) TRADIC, da Bell Laboratories Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 3 GERAÇÃO Surgiu em 1965 : IBM 360 Componente eletrônico : Circuito Integrado (LSI) Mais confiáveis Miniaturização dos componentes Baixíssimo consumo de energia Custo muito mais baixo Menor tamanho Multi-programação IBM 360 - vendeu 30.000 unidades Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 3ª Geração: os circuitos integrados (1965-1980) Transistores, resistores, diodos e outras variações de componentes eletrônicos miniaturizados e montados sobre um único chip Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 4 GERAÇÃO Surgiu em 1975 Componentes eletrônicos - Circuitos Integrados (LSI e VLSI) Tempo de operação - 0,5 nanosegundos (10-9 seg) Popularização no uso Tecnologia de FIRMAWARE (Funções do S.O) Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 4ª Geração: circuitos de larga escala (1980-1990) Circuitos de larga escala LSI - mil transistores por "chip" 1981 nasce o 286 1985 nasce o 386 1989 nasce o 486 Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 5 GERAÇÃO Em fase de estudo Dúvidas quanto a existência Componentes eletrônicos : Circuito integrado (ULSI) Inteligência artificial O hardware e construído visando o software CISC X RISC Multiprocessamento Tempo de operação : pico - segundo (10-12) Memória principal - Gigabytes Memória auxiliar - Terabytes Professor: Aquiles Burlamaqui Introdução a Ciência da Computação Evolução histórica 5ª Geração: Ultra Large Scale Integration (1990 - hoje) Pentium I, Pentium II, Pentium III Pentium IV AMD, etc Professor: Aquiles Burlamaqui