Introdução a Programação Aula 01 Prof. Bruno Crestani Calegaro Curso de Sistemas de Informação ELC1064 Lógica e Algoritmo 1
O que é um computador? Máquina programável genérica Constituído por: Processador Memória Rápida RAM (volátil) ROM (persistente) Memória Lenta Disco rígido (HD) 2
Computador Principais componentes: Suporte físico Hardware (HW) Suporte Lógico Software (SW) 3
Computador HW (Recursos físicos) + SW (Parte decisória) => Execução de tarefas Limitações do hardware impõem limites as possibilidades do software que utiliza Estrutura exata do hardware depende do fabricante Componentes genéricos do hardware na maioria dos casos são relativamente semelhantes 4
Suporte Físico (HW) 5
Suporte Físico (HW) 6
Principais Componentes Físicos Processador Unidade Central de Processamento Central Process Unit (CPU) Executa, calculas, as instruções executadas Memória Primária (RAM, principalmente) Secundária (Disco rígidos, CD-ROMS, DVD) Periféricos Comunicação com o mundo exterior 7
Memória Uma sequência de bits 768 Mbytes = 805 306 368* bytes = 6 442 450 944 bits = 1024 * 1024 * 768 8
Bits e Bytes 1 byte = 2³ ou 8 bits (ou 8 dígitos binários: 0 s ou 1 s) 1 KB (Kbyte ou Kilobyte) = 2 10 ou 1024bytes 1 MB (Megabyte) = 2 20 ou 1024 KB ou 1048576 bytes 1 GB (Gigabyte) = 2 30 ou 1024 MB 9
Suporte Lógico Conceitos principais Arquivo Conjunto de dados armazenado sob um nome identificador Programa Instruções (contidas em um arquivo) que descrevem uma tarefa dada numa dada linguagem Sistema operativo Programa especial que gerencia o hardware e executa programas Windows, Linux, OS X,Android, ios 10
Linguagem? 11
Linguagens Linguagem natural O português é uma linguagem natural Linguagem assembly Muito básica Utilizada quase diretamente pelos processadores dos computadores LOAD @R1, 0 JMP @R1 Equivalente na linguagem de máquina: 010000100010011100100110001010001001001000110001010 12
Linguagens Linguagem de alto nível Sem as ambiguidades e imprecisões de uma linguagem natural mas não tão penosa de utilizar como a linguagem de maquina, exemplo: If (x == 1) System.out.println( X é igual a 1 ) Tradução Caso x seja 1, escreve no monitor X é igual a 1 13
Instruções de Linguagem Informação armazenada Sob a forma de bits Bits organizados em bytes Instruções são informações, logo, conjunto de bytes Processador executa: Instruções do seu repertorio próprio Instruções consideradas de baixo nível Instruções alto nível Mais próximas da forma humana de raciocinar Processador não é capaz de executar diretamente 14
Linguagens Exemplos de LP: C, C++, C#, Pascal, Fortran, Java Fatos: CPU entende instruções oriundas de LP de baixo nível Humanos preferem descrever tarefas para execução pelo computador usando LP de alto nível Necessidade de um meio de tradução LPAN -> LPBN Tradução realizada através de programas chamados compiladores 15
Algoritmos Programar envolve: Compreender e analisar um problema (e os dados envolvidos) Averiguar a melhor forma de o resolver (e de representar dados) Determinas ações, correspondentes a instruções lógicas numa dada Linguagem de Programação, que levem a solução do problema 16
Algoritmos Algoritmo: Sequencia não ambígua de instruções que é executada ate que uma dada condição/objetivo se verifique Conjunto finito de regras, traduzíveis numa sequencia de operações/instruções, que permitem resolver um determinado tipo de problema 17
Lógica e Algoritmos Aprender a programar é aprender a utilizar a lógica para elaborar algoritmos como solução para problemas Como abrir uma garrafa de bebida? Existe apenas uma solução? 18
Proposta de exercícios A travessia de um rio Um barco transporta um fazendeiro mais uma carga Cargas: Galinhas, Saco de Milho e Raposa Se as galinhas ficarem sozinhas com o saco de milho elas comem tudo Se a raposa fica com as galinhas, a raposa devora as galinhas Qual o algoritmo que descreve a solução para esse problema? 19
Proposta de exercícios 1º Passo: Atravesse com as galinhas 2º Passo: Retorne sozinho 3º Passo: Atravesse com a raposa 4º Passo: Retorne com as galinhas 5º Passo: Atravesse com o saco de milho 6º Passo: Retorne sozinho 7º Passo: Atravesse com as galinhas 20
Proposta de exercícios Desafio do Einstein Exercícios do Capitulo 1 do livro texto 21