Computação Eletrônica Introdução ovsj@cin.ufpe.br Observação: Material da Disciplina Computação Eletrônica CIN/UFPE.
Computador O que diferencia o computador de outras máquinas? Comportamento variável; Podemos definir seu comportamento; Exemplos de comportamentos: Tocador de CD, DVD, MP3; Máquina de escrever; Desenhar como pincel; Telefonar; 2
Computador Capacidade particulares: Nem toda tarefa executada por um computador possui uma máquina equivalente. Ex.: Planilha eletrônica; Limitações: Certas máquinas são apenas simuláveis no computador; Como fazer o computador comportar-se como uma máquina? Programando!!! 3
Computador Por que é importante saber programar um computador? Resolver problemas de forma independente de software ou ferramentas; Alguns softwares matemáticos são sofisticados (programáveis) e, portanto, exigem conhecimento em programação. Exemplo: MatLab; 4
Desenvolvendo Programas Etapas: Elaborar uma ideia; Criar um algoritmo; Escrever em uma linguagem de programação; Traduzir para linguagem de maquina; 5
Algoritmos Como se programa um computador? Através de uma sequência de comandos chamada de algoritmos; Mais formalmente, um algoritmo é: Um conjunto finito de comandos, Bem definidos (não ambíguos) e Usados para solucionar um problema em um tempo finito; 6
Algoritmos Exemplos do cotidiano: Receita de bolo; Entretanto, um computador não consegue compreender uma receita de bolo escrita livremente; Trabalha com uma linguagem mais precisa; Utiliza comandos bem definidos; Permite fazer testes para definir o próximo passo (se-então-senão) Permite repetir comandos até que uma condição seja satisfeita (enquanto) 7
Algoritmos Exemplo: Quem já fez um bolo? Receita de bolo escrita de maneira mais formal usando estruturas de repetição e/ou condicionais; 8
Algoritmos Exercício: Escreva uma algoritmo para trocar o pneu de uma carro. Utilize comandos como enquanto e se-então-senão ; 9
Exemplo 1 Um algoritmo para resolver a seguinte questão: Como obter exatamente 4 litros de água dispondo de dois recipientes com capacidades de 3 litros e 5 litros; Como 4 = 3 + 1 ou 4 = 5-1, conseguiremos resolver a questão obtendo um litro; 1 = 3 + 3 5; Algoritmo? 10
Exemplo 1 Para compreender o algoritmo, sejam A e B os recipientes de 3 litros e de 5 litros, respectivamente, indiquemos por (X,n) o fato de o recipiente X conter n litros de água. No início temos (A,0) e (B,0) e, após a execução de cada instrução, temos:? 11
Exercício 1 Outra solução? Conseguindo tirar um litro do recipiente de 5 litros quanto este estiver cheio, resolveremos a questão. Então, basta que o recipiente de 3 litros contenha 2 litros. E para se obter 2 litros? Basta ver que 2 = 5 3. Solução:? 12
Algoritmos Exercício para Casa: Um senhor está numa das margens de um rio com uma raposa, uma galinha e um saco de milho. O senhor pretende atravessar o rio com suas cargas, num barco que só comporta o senhor e 1 das cargas. O senhor não pode deixar em uma das margens, sozinhos, a raposa e a galinha, nem a galinha e o milho. Continue o algoritmo a seguir que orienta o senhor a realizar o transporte: 1.Atravesse as galinhas; 2.Retorne sozinho;... 13
Algoritmos Exercício 2: Torre de Hanoi. 14
Linguagem de Programação Pascal Criada pelo suíço Niklaus Wirth na década de 60; O nome é em homenagem ao matemático francês Blaise Pascal (1623-1662) Utilizado como ferramenta didática 15
Linguagem de Programação Pascal Um programa que escreve Ola Mundo! no monitor: program OlaMundo; begin write('olá Mundo'); end 16
Computador Memoria RAM; Memória (disco); Unidade de Processamento (CPU); Dispositivo de entrada e saída; Dispositivo de saída; 17
Computador 18
Computador Representação das informações Bit 0 e 1 Byte (8 bits) um caractere CPU, Memória RAM e Memória (disco) 19
Compilador/Interpretador Tradutor de programas escritos em uma linguagem de programação para programas em linguagem de máquina. Depois de convertido, o programa pode ser executado independente do compilador e do programa original. 20
Interpretador É um programa que executa outros programas escritos em alguma linguagem de programação. Execução de um programa interpretado é em geral mais lenta que o programa compilado. 21
Compilação Mostrar a compilação do ola_mundo.pas Observações: Os programas construídos neste curso serão exclusivamente modo texto; Ou seja, não haverá interação com mouse, janela, ícones ou gráficos. Apenas texto; A execução será feita através de entradas de dados pelo teclado e saídas de texto no monitor (dentro de uma janela Command Prompt). 22
Execução O que acontece depois do duplo clique em ola_mundo.exe? Mostrando o código fonte passo a passo; Exercício: Fazer um programa Pascal que escreve seu nome no monitor; Um programa que lê um texto do teclado; 23