Judite Terra Chaplin
1 EVOLUÇÃO DOS COMPUTADORES 1951/ Computadores de primeira geração Circuitos eletrônicos e válvulas Uso restrito Precisava ser reprogramado a cada tarefa Grande consumo de energia Problemas devido à muito aquecimento As válvulas normalmente quebravam após algumas horas de uso e tinha o processamento bastante lento. Nesta geração os computadores calculavam com uma velocidade de milésimos de segundo. 3
2 1959/ Computadores de segunda geração Início do uso comercial Tamanho gigantesco Capacidade de processamento muito pequena Uso de transistores em substituição às válvulas A válvula foi substituída pelo transistor. Seu tamanho era 100 vezes menor que o da válvula, não precisava de tempo para aquecimento, consumia menos energia, era mais rápido e confiável. Os computadores desta geração já calculavam em microssegundos (milionésimos). 1965/ Computadores de terceira geração Surgem os circuitos integrados Diminuição do tamanho Maior capacidade de processamento Início da utilização dos computadores pessoais Os transistores foram substituídos pela tecnologia de circuitos integrados (associação de transistores em pequena placa de silício). Além deles, outros componentes eletrônicos foram reduzidos e montados num único CHIP, que já calculavam em nanossegundos (bilionésimos). Os computadores com o CI (Circuito Integrado) são muito mais confiáveis, bem menores, tornando os equipamentos mais compactos e rápidos, pela proximidade dos circuitos; possuem baixíssimo consumo de energia e menor custo. 4
3 PDP 8: Primeiro computador com preço acessível. Chip: transistores em pequena placa de silício 5
4 1975/19?? - Aparecimento dos aplicativos de quarta geração: Surgem os softwares integrados Processadores de Texto Planilhas Eletrônicas Gerenciadores de Banco de Dados Gráficos Gerenciadores de Comunicação Em 1975/77, ocorreram avanços significativos, surgindo os microprocessadores, os microcomputadores e os supercomputadores. Em 1977 houve uma explosão no mercado de microcomputadores, sendo fabricados em escala comercial e a partir daí a evolução foi sendo cada vez maior, até chegar aos micros atuais. O processo de redução continuou e foram denominados por escalas de integração dos circuitos integrados. Evolução do Chip 6
5 19??/2??? - As principais características da quinta geração: Supercomputadores Automação de escritórios Automação comercial e industrial CAD/CAM e CAE Robótica Imagem virtual Multimídia Era on-line (comunicação através da Internet) O primeiro supercomputador, de fato, surgiu no final de As aplicações para eles são muito especiais e incluem laboratórios e centro de pesquisa aeroespacial como a NASA, empresas de altíssima tecnologia, produção de efeitos e imagens computadorizadas de alta qualidade, entre outros. Eles são os mais poderosos, mais rápidos e de maior custo. 7
6 O Computador Analógicos Digitais Princípio da Analogia Exemplo 1) Termômetro A dilatação de mercúrio é análoga à mudança de temperatura. 8
7 Exemplo 2) Régua de cálculo Operações de multiplicação e divisão são executadas simplesmente somando-se ou subtraindo-se a distância medida na régua externa àquela marcada na régua interna deslizante. Os computadores analógicos são capazes, por exemplo, de simular as forças que atuam numa represa ou as forças que atuam nas asas de um avião a partir da voltagem elétrica. Resumindo, os computadores analógicos são caracterizados por lidarem com grandezas contínuas. Neles, as variáveis do problema são representadas por tensões, que são quantidades físicas contínuas. 9
8 Computadores Digitais Capazes de somar, subtrair, multiplicar, dividir e comparar através de pulsações elétricas que, em última análise, representam os dígitos 0 (ausência de corrente) e 1 (presença de corrente). Os computadores digitais serão o foco do nosso curso. 10
9 A Estrutura de um Computador Digital (Arquitetura) O esquema de um computador digital Memória Unidade de Entrada Unidade de Controle Unidade de Saída Unidade Lógica e Aritimética CPU Ao conjunto de circuitos eletrônicos e dispositivos mecânicos dá-se o nome de hardware. Esse nome é usado como referência à maquina propriamente dita, e não a sua utilização. Unidade de Entrada Esta unidade traduz informação de uma grande variedade de dispositivos em um código que a unidade central de processamento (CPU) é capaz de entender. Em outras palavras, ela é capaz de traduzir números, letras e imagens em pulsos elétricos que são compreensíveis ao computador. Alguns exemplos de unidades de entrada são o teclado, unidades de discos (disquetes e cds, por exemplo), scanners, mouse, leitores ópticos, etc. As unidades de entrada também são conhecidas como periféricos. 11
10 Memória É o local físico capaz de armazenar os dados e também os programas que irão manipulá-los. As principais memórias são classificadas como memória RAM (Randon Access Memory), usada para processamento dos dados, e memória secundária, usada para armazenamento de dados (por exemplo, disco rígido). Geralmente, a memória de alta velocidade é utilizada para armazenar, temporariamente, dados e programas que estão sendo processados, já que qualquer programa, para ser executado, tem que estar nessa memória. A unidade de informação binária usada pelo computador é o bit. Este tem atribuições lógicas 0 ou 1. Os bits são agrupados de modo a possibillitar ao usuário representar os dados e programas que deseje. Denomina-se byte a um conjunto de 8 bits. Um byte pode ter até 2 8 = 256 configurações diferentes. Um caractere precisa de 1 byte de memória para ser representado. A palavra casa precisa, portanto, de 4 bytes de memória. A capacidade de um computador normalmente é medida pelo tamanho da sua memória bytes = 1 Kbyte (quilobyte) 1024 kbytes = 1 Mbyte (megabyte) 1024 Mbytes = 1Gbyte (gigabyte) 12
11 Exemplo: Página de um livro: 50 linhas 80 caracteres por linha Livro de 1000 páginas caracteres Memória aproximadamente 4 Mb 13
12 Unidade Central de Processamento (CPU) A Unidade Central de Processamento de um computador, devido a sua complexidade, é normalmente dividida em duas partes: Unidade lógica e aritmética Unidade de controle Devido ao desenvolvimento da microeletrônica é possível construir toda uma CPU em uma única pastilha de Silício. Essa pastilha, ou chip, denomina-se microprocessador. Como exemplo, podemos citar INTEL PENTIUM IV, MOTOROLA 6800, INTEL CELERON, etc. Os microprocessadores são classificados pelo comprimento, em bits, da unidade de informação que são capazes de processar de uma só vez. Atualmente, os microprocessadores mais usuais são os de 32 bits. Resumindo, o microprecessador é a unidade central de processamento (CPU) de um microcomputador. Unidade Lógica e Ariimética Nesta unidade são realizados todos os cálculos aritméticos (adição, subtração, multiplicação e divisão) e qualquer manipulação de dados (sejam eles numéricos ou não). Unidade de Controle É a unidade responsável pelo tráfico de dados. Ela obtém dados armazenados na memória e interpreta-os. Controla a transferência de dados da memória para a unidade lógica e aritmética, da unidade de entrada para a mémoria e da memória para a unidade de saída. 14
13 Unidade de Saída Os dados processados são convertidos, por esta unidade, de impulsos elétricos em palavras ou números que podem ser disponibilizados ao usuário final. Exemplos dessas unidades são o vídeo (monitor), impressoras, unidades de disco (disquetes e cds, por exemplo), etc. Assim como as unidades de entrada, as unidades de saída também são conhecidas como periféricos. 15
14 Noções de Lógica e Algoritmos Para compreeender melhor o processo de criação de programas computacionais, é necessário entender os conceitos de lógica de programação e algoritmos. Lógica de Programação Lógica de programação é a técnica de encadear pensamentos para atingir determinado objetivo. O aprendizado dessa técnica é necessário para quem deseja trabalhar com o desenvolvimento de sistemas e programas computacionais. Algoritmos Algoritmo é uma sequência de passos finitos cujo objetivo é solucionar um determinado problema. Algoritmo não é a solução do problema. Algoritmo é o conjunto de passos ou ações (caminhos) que levam à solução de um dado problema. O exemplo abaixo ilustra o uso de um algoritmo para resolver um dado problema. 16
15 Exemplo 1: Problema: Deseja-se falar com alguém através de um telefone público. Como proceder? Solução: Seguir os passos descritos no telefone (algoritmo) 1 Retirar o telefone do gancho; 2 Esperar o sinal; 3 Colocar o cartão; 4 Discar o número; 5 Falar ao telefone; 6 Colocar o telefone no gancho. O algoritmo ensina uma máquina a fazer alguma tarefa específica. Existem vários caminhos que levam à solução de um problema. Podemos concluir, então, que existem diversos algortimos que podem ser utilizados para encontrar uma solução. O aprendizado de algoritmos não é uma tarefa muito fácil. Só conseguimos utilizá-lo racionalmente através de muitos exercícios práticos. Exercício 1: Algoritmo para trocar uma lâmpada 1 Se a lâmpada estiver fora de alcance, pegar a escada; 2 Pegar a lâmpada; 3 Se a lâmpada estiver quente, pegar um pano; 4 Tirar a lâmpada queimada; 5 Colocar a lâmpada boa. 17
16 Exercício 2: Algoritmo para o final de semana 1 Ver a previsão do tempo; 2 Se fizer sol ir a praia; Senão Estudar; 3 Almoçar; 4 Ver televisão; 5 Dormir. Exercício 3: Algoritmo para fazer uma prova 1 Ler a prova; 2 Pegar a caneta; 3 Enquanto houver questão em branco e enquanto o tempo não terminou faça Se souber fazer a questão Resolvê-la; Senão Pular para a próxima; 4 Entregar a prova. 18
17 Programa Computacional É um algoritmo escrito em uma linguagem computacional. É a tradução do algoritmo para uma linguagem que será interpretada pelo computador. Linguagem Computacional Para armazenar um algoritmo na memória do computador e para que ele possa, em seguida, comandar as operações a serem executadas, é necessário que ele seja programado, ou seja, transcrito para uma linguagem que o computador possa entender direta ou indiretamente. Os computadores só podem executar diretamente os algoritmos expressos em linguagem de máquina, que é um conjunto de instruções capaz de ativar diretamente os dispositivos eletrônicos do computador. Essa linguagem tem vários incovenientes para os humanos: Diferente para cada tipo de computador, pois depende da sua arquitetura; Extremamente rudimentar; Expressa em forma numérica (binária ou hexadecimal), tornando-se pouco expressiva; Manipulação dos dados na memória. Para suprir esses problemas, foram desenvolvidas linguagens em que a programação é feita através de uma notação matemática e de algumas palavras reservadas. As linguagens de programação são bem mais simples e podem ser facilmente entendidas e utilizadas pelos usuários do computador. 19
18 Os programas escritos nessas linguagens são traduzidos para a linguagem de máquina através de um programa especial chamado Compilador. Linguagem de Programação Linguagem de Máquina Compilador Como exemplo de linguagens de programação podemos citar o Fortran, C, C++, Pascal, Cobol, MATLAB, etc. O MATLAB tem uma característica bem particular. Ele não só incorpora as características de uma linguagem de programação, mas também do compilador. Isso será visto com mais detalhes na seqüência deste curso. 20