Professional Documents
Culture Documents
INF 100 Introduo Programao Aula 1 Marcos H. F. ribeiro Salles V. G. Magalhes Luiz Carlos A. Albuquerque
O que computador?
Segundo a Wikipedia: (...) uma mquina capaz de variados tipos de tratamento automtico de informaes ou processamento de dados. Exemplos de computadores incluem o baco, a calculadora, o computador analgico e o computador digital. Um computador pode prover-se de inmeros atributos, dentre eles armazenamento de dados, processamento de dados, clculo em grande escala, desenho industrial, tratamento de imagens grficas, realidade virtual, entretenimento e cultura.
O que computador?
Continuando...
No passado, o termo j foi aplicado a pessoas responsveis por algum clculo. Em geral, entende-se por computador um sistema fsico que realiza algum tipo de computao. Existe ainda o conceito matemtico rigoroso, utilizado na teoria da computao
No veremos! :-)
O que computador?
Ainda continuando...
Assumiu-se que os computadores pessoais e laptops so cones da Era da Informao; e isto o que muitas pessoas consideram como "computador". Entretanto, atualmente as formas mais comuns de computador em uso so os sistemas embarcados, pequenos dispositivos usados para controlar outros dispositivos, como robs, cmeras digitais ou brinquedos.
O que computador?
uma mquina capaz de variados tipos de tratamento automtico de informaes ou processamento de dados.
Zuse, 1936
O que computador?
uma mquina capaz de variados tipos de tratamento automtico de informaes ou processamento de dados.
O que computador?
O que computador?
O que computador?
O que computador?
Barramentos Externos
Hardware
Hardware - Processador
Softwares
Programas de computador; Podem ser vistos como a parte abstrata ou lgica de um computador; So representados logicamente por meio de algoritmos; Da converso dos algoritmos em programas de computador, resulta-se o software.
Softwares
So os responsveis pela transformao dos dados de entrada em informaes de sada; Podem ser vistos como uma sequncia de comandos que detalham todas as aes que um computador deve realizar; Um computador executa precisamente o que est determinado em um programa; O programa contm instrues para a mquina, no para o usurio;
Universidade Federal de Viosa Departamento de Informtica
Softwares
O computador processa suas instrues passo a passo, comeando pela primeira instruo e seguindo a ordem pr-estabelecida no programa; Duas grandes categorias de software: Sistema Operacional e Aplicativos.
Controla o funcionamento do computador; Reconhece e controla o funcionamento do hardware; Realiza a interao com o usurio; Torna o uso do computador mais fcil.
Exemplos
Windows (Vista, 7, 2003, XP, 2000, ME, 98 etc.) Linux (Debian, Ubuntu, Red Hat, Mandriva, Slackware, Fedora, etc.) Unix AIX MAC-OS MS-DOS etc.
Universidade Federal de Viosa Departamento de Informtica
Corresponde poro do SO que gerencia o sistema operacional como um todo; Interage diretamente com o hardware; carregado do disco rgido para a memria principal quando o computador inicializado; responsvel por carregar do armazenamento em disco outros programas auxiliares do sistema operacional (programas no residentes), quando necessrio.
Universidade Federal de Viosa Departamento de Informtica
Aplicativos
Softwares desenvolvidos para realizarem uma tarefa um um conjunto de tarefas relacionadas a uma rea ou finalidade especfica
Edio de textos Planilhas eletrnicas Clculos estruturais (Engenharia Civil) Anlise de riscos (Economia) Sequenciamento de DNA (Biologia) Etc.
Universidade Federal de Viosa Departamento de Informtica
Aplicativos
Existem aplicativos que fazem parte do pacote do sistema operacional; Na grande maioria dos casos, um aplicativo, ou uma verso dele s funciona em um computador com um SO especfico; Alguns fabricantes de software produzem verses diferentes de seus produtos para diversos SOs diferentes;
Conhecer uma linguagem de programao; Um editor de textos para que se escreva o cdigo do programa na linguagem escolhida; Um compilador, interpretador ou algo semelhante, para interpretao do cdigo escrito pelo programador e a gerao de um programa (compilador), ou a execuo direta do mesmo (interpretador); Existem ainda os IDEs (Integrated Development Environment Ambiente de Desenvolvimento Integrado), que unem diversos aplicativos teis ao programador
Objetivamos prover ao estudante a base terica para o desenvolvimento de aplicativos que contribuam para automatizao de tarefas em sua futura rea de atuao profissional. Ser ensinada, como linguagem de programao, a linguagem C++.
Bit
a unidade bsica de armazenamento do computador. Seu nome vem de Binary Digit e possui um duplo sentido em ingls, uma vez que bit quer dizer pedacinho, ou pequena poro. Pode assumir apenas 2 valores distintos, ou seja, o bit binrio. Esses 2 valores podem ser representados de diversas formas mas geralmente so utilizados os nmeros 0 e 1.
Universidade Federal de Viosa Departamento de Informtica
Bit
Toda a informao contida e processada em um computador convertida para sequncias de dgitos 1 e 0; Existem diversos mecanismos para se identificar onde comeam e terminam subsequncias dentro de uma grande sequncia, se um conjunto de bits representa um caracter, um nmero inteiro ou outro tipo de dado qualquer.
Byte
Um byte atualmente o conjunto de 8 bits. Um bit binrio, isto significa que cada posio do byte pode assumir 2 valores distintos: 0 ou 1. Por possuir 8 posies, um byte capaz de representar 28, ou seja, 256 valores distintos.
Byte
Nmero Inteiro 0 1 2 ... 255 Byte Correspondente 00000000 00000001 00000010 ... 11111111
Byte
Mltiplos de Bytes: Kilobyte (1024 = 210 bytes), Megabyte (1024*1024 = 220 bytes), Gigabyte (230bytes), Terabyte (240bytes), Petabyte etc. Mltiplos de bits: anlogos aos de bytes. 1 Kilobyte representado por 1 kB 1 Kilobit representado por 1kb 1 Megabyte representado por 1MB 1 Megabit representado por 1Mb Etc.
Universidade Federal de Viosa Departamento de Informtica
Compilao e Interpretao
Computadores s entendem sequncias de 1 e 0; Seres humanos aprendem linguagens com alto poder de expresso, utilizando muitas vezes estruturas mnemnicas e comandos prdefinidos para escrever programas; Como transformar o que um ser humano compreende no que uma mquina compreende?
Universidade Federal de Viosa Departamento de Informtica
Compilao e Interpretao
Existem aplicativos, especficos para analisar e processar programas escritos em uma linguagem de programao pr-definida e transform-los em programas binrios, executveis por um computador; Estes aplicativos so chamados compiladores ou interpretadores;
Compiladores
So responsveis por converter um cdigo escrito em uma linguagem de alto nvel (ex.: C, C++, Pascal etc.) em um programa binrio executvel; So especficos para a linguagem para o qual foram projetados para compilar e tambm para o SO e o hardware onde esto sendo executados. Portanto, para uma mesma linguagem, existem compiladores diferentes, em SOs diferentes.
Universidade Federal de Viosa Departamento de Informtica
Interpretadores
O software responsvel pela gerao do cdigo executvel, ao invs de analisar o cdigo-fonte inteiro desenvolvido pelo programador e somente depois da anlise completa gerar um programa executvel inteiro, ele l o cdigofonte instruo por instruo e a converte e executa passo-a-passo, no gerando um programa executvel ao final do processo.
Algoritmos
Uma sequncia de aes executveis para a obteno de uma soluo para um determinado tipo de problema. Exemplos:
Receitas de bolo; Instrues para montagem de equipamentos eletrnicos; Instrues para uso de medicamentos; Etc.
Algoritmos
Definio mais precisa: sequncia finita de instrues bem definidas e no ambguas, cada uma das quais podendo ser executada mecanicamente num perodo de tempo finito e com uma quantidade de esforo finita; Programar computadores consiste basicamente em estruturar dados e construir algoritmos; Isto significa que programas de computador representam uma classe especial de algoritmos, capazes de serem seguidos por computadores.
Universidade Federal de Viosa Departamento de Informtica
Uma linguagem de programao de computadores guarda algumas semelhanas com as linguagens naturais (portugus, ingls etc.); Assim como nas linguagens naturais, o descuido com a escrita pode causar erros que prejudicam a execuo correta do programa resultante da compilao ou at mesmo um erro na prpria compilao.
Universidade Federal de Viosa Departamento de Informtica
As linguagens de programao possuem regras que regulamentam o uso das palavras e da pontuao. Essas regras so chamadas de sintaxe da linguagem.
Importncia da sintaxe
Como chego eu loja na? Se voc pode vir aqui em casa? Agora no preciso sair. X Se voc pode vir aqui em casa? Agora no, preciso sair. Diga agora: quero sair X Diga: agora quero sair Eles ouviram os gritos X Eles ouviro os gritos
Importncia da sintaxe
Em todos exemplos anteriores, seres humanos fluentes em portugus podem, por deduo e/ou anlise do contexto, inferir o sentido correto para as frases. Um computador, no entanto, no possui a mesma capacidade dedutiva, analtica e de discernimento que um ser humano. Resultado: ou uma instruo est escrita de forma totalmente correta ou no ser interpretada pela mquina. Linguagem de programao = sintaxe rgida
Universidade Federal de Viosa Departamento de Informtica
Importncia da lgica
Importncia da lgica
Instrues fora de ordem, instrues faltantes e instrues que no fazem sentido no contexto do programa/algoritmo, tambm podem ser geradores de erros, mesmo que o programa esteja sintaticamente correto e seja compilado sem problemas. Erros de lgica so muito mais difceis de localizar do que erros de sintaxe; Ex.: mais fcil determinar se "ovos" contm um erro ortogrfico em uma receita do que dizer se h ovos em excesso ou se eles foram postos muito cedo.
Algoritmo - Curiosidades
Sua denominao tem origem no sobrenome, AlKhwarizmi, do matemtico persa do sculo IX Mohamed ben Musa, cujas obras foram traduzidas no ocidente cristo no sculo XII, tendo uma delas recebido o nome Algorithmi de numero indorum, sobre os algoritmos usando o sistema de numerao decimal (indiano). O nome de Al-Khwarizmi tambm est relacionado s origens de outros termos matemticos, como algarismo e logaritmo.
Universidade Federal de Viosa Departamento de Informtica
Algoritmo - Curiosidades
A mulher do programador pede para ele ir padaria: - Benh, vai na padaria e traz 5 pes. Se tiver ovos, traz 6. Ele vai, e volta com 6 pes, e diz: - Tinha ovos.