Você está na página 1de 42

N575 - Algoritmos e Programação de Computadores

Conceitos básicos de informática e programação

Prof. Raphael Torres Santos Carvalho

Roteiro
 Objetivo  Conceitos

Básicos  Sistemas Numéricos  Hardware (componentes básicos de um computador)  Medidas de armazenamento  Software (sistema operacional e linguagem de programação)

2

Objetivo
 Identificar

os conceitos básicos de informática e sua relação com a programação

3

Conceitos Básicos
 Informática

é o ramo do conhecimento que cuida dos conceitos, procedimentos e técnicas, referentes ao tratamento de conjuntos de dados, objetivando a tomada de decisões.  Dado é a representação física de um evento.
 Como é realizada a representação de um evento?
 Os

dados podem ser armazenados, transportados, copiados e até eliminados. A sua importância reside na “quantidade de informação” que pode transmitir a quem o acessa.  Informação é a significação de um dado.
 Um

computador é uma máquina que manipula dados a partir de uma lista de instruções.
4

foram criados diversos métodos de representar as quantidades  O Sistema decimal.Sistemas Numéricos  Desde quando se começou a registrar informações sobre quantidades. usa um sistema de numeração posicional. ao qual estamos acostumados. Isso significa que a posição ocupada por cada algarismo em um número altera seu valor de uma potência de 10 (na base 10) para cada casa à esquerda  Por exemplo: número 125 no sistema decimal (base 10) 125 = 1x102 + 2x101 + 5x100 5 .

Sistemas Numéricos  Exemplo: 6 .

 No comércio pedimos uma dúzia de rosas ou uma grosa de parafusos (base 12) e também marcamos o tempo em minutos e segundos (base 60).  A base 10 (sistema decimal) é hoje a mais usualmente empregada. por facilidade. embora não seja a única utilizada.  Os computadores utilizam a base 2 (sistema binário) e os programadores. tal como 24 (base 16 ou sistema hexadecimal) ou eventualmente ainda 23 (base 8 ou sistema octal).Sistemas Numéricos  Base de um Sistema de Numeração  A base de um sistema é a quantidade de algarismos disponível na representação. usam em geral uma base que seja uma potência de 2. 7 .

Sistemas Decimal 8 .

o elemento mínimo de informação nos computadores foi apelidado de bit (uma contração do inglês binary digit). que é obtida através de dois diferentes níveis de tensão  Havendo apenas dois algarismos. todas as informações armazenadas ou processadas no computador usam apenas DUAS grandezas.Sistemas Numéricos  Representação Binária  Os computadores modernos utilizam apenas o sistema binário. portanto dígitos binários. Mas se 102 = 210. representadas pelos algarismos 0 e 1. então dez é igual a dois? 9 . isto é.  Na base 2. o número "10" vale dois.  Essa decisão de projeto deve-se à maior facilidade de representação interna no computador.

cada quatro bits são representados por apenas um algarismo hexadecimal (de 0 a F).  No sistema octal (base 8).  No sistema hexadecimal (base 16). cada três bits são representados por apenas um algarismo octal (de 0 a 7). para reduzir o número de algarismos da representação e consequentemente facilitar a compreensão da grandeza e evitar erros.Sistemas Numéricos  Representação em Octal e em Hexadecimal  Em projetos de computação é usual representar quantidades usando sistemas em potências do binário (octal e principalmente hexadecimal). 10 .

11 . por exemplo. de octal para binário etc. mas que existem métodos de conversão direta como.Conversão entre bases  Será utilizado o sistema de numeração decimal (base 10) como base intermediária entre as conversões numéricas.

 Ex: 11012 12 . lembrando que a base do número binário é 2.Conversão entre bases  Binário para Decimal  Consiste em multiplicar o algarismo do número binário pela base elevada ao expoente de sua colocação no número.

a) 1000 b) 1011 c) 101010 d) 1111111 e) 1110111 f) 101101101 13 .Conversão entre bases  Binário para Decimal  Exercício: Converta os seguintes números de base dois para base dez.

Conversão entre bases  Decimal para binário  Consiste em dividir o número decimal pela base 2. obtendo um resultado e um resto. repete-se a operação até termos um resultado que não possa mais ser dividido pela base.  Ex: 2510 14 . Caso o resultado possa ainda ser divido pela base.

a) b) c) d) e) f) 75 90 125 171 200 212 15 .Conversão entre bases  Decimal para binário  Exercício: Converta os seguintes números de decimal para binário.

Conversão entre bases  Octal para decimal  Consiste em multiplicar o algarismo do número octal pela base elevada ao expoente de sua colocação no número.  Ex: 6278=> 16 . lembrando que a base do número octal é 8.

 Ex: 40710=> 17 . repete-se a operação até termos um resultado que não possa mais ser dividido pela base. obtendo um resultado e um resto.Conversão entre bases  Decimal para octal  Consiste em dividir o número decimal pela base 8. Caso o resultado possa ainda ser divido pela base.

 Ex: A1B216=> 18 .Conversão entre bases  Hexadecimal para decimal  Consiste em multiplicar o algarismo do número hexadecimal pela base elevada ao expoente de sua colocação no número. lembrando que a base do número hexadecimal é 16.

Caso o resultado possa ainda ser divido pela base. repete-se a operação até termos um resultado que não possa mais ser dividido pela base. obtendo um resultado e um resto.  Ex: 2510=> 19 .Conversão entre bases  Decimal para hexadecimal  Consiste em dividir o número decimal pela base 16.

Hardware Hardware é a parte física do computador.  Arquitetura de um computador é a descrição dos elementos componentes de um computador e do modo de interligá-los.  A maioria dos computadores existentes no mercado apresenta uma arquitetura proposta ainda nos anos de 1940 pelo o matemático húngaro John Von Neuman.  20 . interligadas de acordo com o que é estabelecido no referido projeto. disco rígido entre outros.  O termo "hardware" não se refere apenas aos computadores pessoais. processadores. mas também aos equipamentos embarcados em produtos que necessitam de processamento computacional.  Um computador é construído a partir de um projeto e de diversas partes. Exemplos: memórias.

internamente os computadores modernos podem ser caracterizados por três partes distintas:  Unidade central de processamento (UCP ou CPU)  Memória primária (ou principal) (MEM)  Dispositivos periféricos ou de entrada e saída (E/S) 21 .Hardware  Na arquitetura de Von Neuman.

Hardware  Estas três partes são conectadas entre si por condutores de corrente elétrica. para a unidade central de processamento.  A arquitetura proposta por Von Neuman estabelece que. através dos quais os “bits” circulam. durante o funcionamento de um computador. através de um fluxo de controle. ocorre o seguinte processo:  Os dados são capturados por meio de um periférico de entrada!  Após os dados serem capturados são transferidos para a memória primária!  Os dados que estão na memória são direcionados. ou para algum outro dispositivo periférico! 22 .

o gravação de eventuais resultados do processamento. o reinício de todo o processo (caso necessário) 23 .  é um conjunto de dispositivos eletrônicos responsável pelas operações de processamento referentes aos cálculos lógicos e matemáticos. o execução de uma operação representada na instrução.Hardware  Unidade Central de Processamento (UCP).  Tarefas: o busca de uma instrução na memória. o interpretação de uma instrução.

de operações aritméticas ou lógicas. • Armazenar resultados de operações realizadas no processador e que se destinam à memória primária. que vieram do processador.Hardware Unidades que compõem a UCP  Unidade Aritmética e Lógica (UAL) o responsável por realizar cálculos matemáticos mais complexos de maneira mais rápida. 24 . e que vão retornar ao mesmo. • Armazenar resultados intermediários.  Registradores o Memória temporária para • Armazenar dados que vêm da memória primária e vão entrar no processador.

 Relógio o Gerador de pulsos que determinam um ciclo de tarefas da UCP. mais tarefas esta pode realizar num mesmo intervalo de tempo. 25 .Hardware Unidades que compõem a UCP  Unidade de Controle (UC) o Controla o fluxo de dados na UCP: busca na memória. Em cada ciclo (ou pulso) a UCP realiza uma tarefa. assim quanto maior a frequência do relógio da UCP. controle geral das tarefas da UCP. chamadas da UAL.

escrita e volatilidade 26 .Hardware  Memória Primária (ou Principal)  funciona como uma “área de trabalho“ para todos os procedimentos executados no computador.  serve como local para armazenar os conjuntos de instruções (os “programas”). que são capazes de modificar os dados também ali colocados.  São classificadas de maneira geral de acordo com a sua capacidade de leitura.

Hardware  Memória – Tipos  RAM (memória de acesso aleatório) o é uma memória em que se pode ler e escrever. Exemplo são os discos rígidos. Não se altera se o computador é desligado. 27 . É a memória principal do computador e a mais usada pelos aplicativos e sistema operacional. Na maioria das vezes é muito mais lenta que a RAM.  ROM (memória somente-leitura) o Só é possível ler seu conteúdo.  Secundária o São dispositivos usados para armazenar grandes quantidades de informação em caráter não volátil. mas cujo conteúdo é perdido uma vez que o computador é desligado. mas não alterá-lo.

Entrada – saída. 28 . Comunicação. à medida que aumentam as aplicações do uso do computador. Saída.Hardware  Dispositivo periférico permiti o intercâmbio de dados entre a memória primária do computador e o meio externo.  Tipos de periféricos:     Entrada.  A quantidade e a variedade de dispositivos periféricos existente tendem a crescer.

 Exemplos: Unidades de discos rígidos (HD). Pen drives.Hardware Periféricos de entrada  Têm como função transferir dados do meio externo para a memória primária.  Exemplos: placas para conexão em rede e placa fax-modem  29 . transferem dados da memória primária para o meio externo. mouses. impressoras. Cada um desses tipos de periféricos se caracteriza por mover os dados apenas num único sentido. caixas de som.  Periféricos de comunicação  São aqueles destinados à comunicação entre computadores.  Periféricos de saída  Trabalham ao contrário dos de entrada.  Exemplos: monitores de vídeo. unidades de DVD. isto é.  Periféricos de entrada-saída  Podem mover dados em ambos os sentidos.  Exemplos: teclados.

necessários para representar as mensagens utilizadas na comunicação entre as pessoas.  Insuficientes para representar todas as letras do alfabeto. os dados de um computador são medidos em bits e bytes.   Pode representar.Medidas de Armazenamento Assim como a água é medida em litros ou o açúcar é medido em quilos.  Um bit único somente pode apresentar-se no estado “0”.  Cada valor do código binário foi denominado bit (binary digit). ou no estado “1”. duas mensagens distintas. no máximo. 30 . que é a menor unidade de informação. todos os algarismos e caracteres especiais.

 Cada letra do alfabeto.Medidas de Armazenamento  Informação é representada por um grupo de bits chamados de palavras. é representado como um conjunto de oito bits. O código mais difundido até hoje é o ASCII (American Standard Code for Information Interchange).  Um grupo de 8 bits é chamada de 1 byte. seja maiúscula ou minúscula.  Tamanho típico de uma palavra é de 8 bits. 31 .  A correspondência entre cada caráter e cada grupo de bits é estabelecida através de um código. cada algarismo e cada caráter especial.

ou de “meio byte”. o Não se pode falar em “um terço do byte”. Múltiplo 1 Kilobyte 1 Megabyte 1 Gigabyte 1 Terabyte Representação 1KB 1MB 1GB 1TB Equivalência 1024 B 1024 KB 1024 MB 1024 GB 32 .Medidas de Armazenamento O tamanho de uma memória principal costuma ser definido como a quantidade de bytes que a mesma pode comportar. apesar de não existirem submúltiplos.  Byte  É unidade para medir tamanho de memória primária.  Possui uma escala de múltiplos.

Software  Software é a parte lógica. É o conjunto de instruções e dados que é processado pelos circuitos eletrônicos do hardware. o que não se pode tocar. ou seja. 33 .

 Ponto de partida para um aprendizado voltado para o domínio de qualquer computador.Software  Sistema Operacional  Conjunto de programas contendo instruções que coordenam todas as atividades entre recursos computacionais.  Residente no disco rígido do computador (maioria dos casos). 34 .  Tipos similares de computadores podem possuir sistemas operacionais diferentes.  Computadores de diferentes portes possuem tipicamente diferentes sistemas operacionais.  Requisito para o funcionamento de um computador.

Software  Linguagem de programação  É um conjunto de termos (vocabulário) e de regras (sintaxe) que permitem a formulação de instruções (programas) para serem executados pelo computador.  Tipos de Linguagem  Linguagem de máquina  Linguagem de baixo nível  Linguagem de alto nível 35 .

portas de E/S) e que necessitam de alta velocidade de execução. São utilizadas no desenvolvimento de aplicações que interagem diretamente no hardware (processador.Software  Linguagem de máquina:  É a única entendida pelo computador. sendo formada por instruções escritas em código binário  Linguagens de baixo nível:  São aquelas cujos códigos são muito próximos aos usados pela máquina (códigos binários ou linguagem de máquina). memória.  São chamadas de Linguagem Montadora (Assembler – Assembly Language) 36 .

C++.Software  Linguagem de alto nível  São aquelas cujos códigos são muito próximos aos utilizados pela linguagem humana. C# 37 . Java.  Exemplo: Linguagem C.

Software  Programa-fonte  Quando a linguagem de programação é utilizada para desenvolvimento de programas executáveis. tarefa executada pelos programas tradutores. conhecido como Programa-fonte ou códigofonte que não é reconhecido pelo computador. 38 .  É necessário traduzir esse texto para linguagem de máquina.  Processo conhecido como compilação e gera o programa-objeto. inicialmente é gerado um “texto”.

Software  Programas tradutores  Montadores (Assembler)  Compiladores  Interpretadores 39 .

 É um programa que executa repetidamente a seguinte seqüência: o pega a próxima instrução.Software  Interpretador  as instruções definidas na linguagem de alto nível (código-fonte) são executadas diretamente. código fonte máquina entrada de dados interpretador saída de dados 40 . o determina as ações a serem executadas. o executa estas ações.  traduz o comando de um programa de cada vez e então chama uma rotina para completar a execução do comando.

 Este arquivo resultante pode ser em uma linguagem que é direta-mente executável. tal como linguagem de máquina.Software  Compilador  produz a partir do arquivo de entrada. tal como outra linguagem para a qual já existe um tradutor. porém numa linguagem que é executável. outro arquivo que é equivalente ao arquivo original. ou indiretamente executável.  O objetivo de um compilador é traduzir um programa escrito em uma linguagem (código fonte) em um programa equivalente expresso em uma linguagem que é executável diretamente pela máquina (código objeto) código fonte compilador máquina entrada de dados código objeto saída de dados 41 .

Dúvidas? 42 .