Você está na página 1de 18

23/03/2016

Aula 1
Introdução à Ciência dos Computadores

Profa. Divani Barbosa Gavinier


Turma 153 e 154 - Ano 2016

Utilidade dos computadores, tablets e smartphones:

Meio Social
(para comunicação)

Meio de Busca
(biblioteca)

Ferramenta
(processamento de dados)

O nome que se usa a quem faz processamento de dados é:


PROGRAMADOR
2

1
23/03/2016

→ doloroso!

Fonte: Revista Veja


http://veja.abril.com.br/blog/impavido-
colosso/brasil-e-o-8-pais-com-mais-
adultos-analfabetos-do-mundo/
(acesso em 06 de março 2016).

Habilidades como leitura e escrita deveriam ser universais

No entanto, ninguém fica incomodado em


não saber programar!
3

Assim como o analfabetismo


foi tolerado por muito tempo,
vivemos num mundo em que
ainda se aceita que a maioria
das pessoas não entendam nada
sobre processos lógicos, como
os códigos funcionam e como
podem ser criados.

Linguagens de programação são


dominadas por um pequeno percentual da
população

2
23/03/2016

Consequência disso é um modo


de vida cada vez mais
dependente de códigos, que
esta sendo desenhado por uma
minoria.

Sem entender os processos lógicos, como os códigos funcionam e como


podem ser criados, não nem sequer para opinar como um sistema
poderia ser feito,

Resta apenas o papel de usuário


desprotegido e desinformado
quanto as decisões que são
tomadas na sua vida.
vida
5

NÃO SABER PROGRAMAR É O


ANALFABETISMO DO FUTURO

3
23/03/2016

Um sistema computacional é composto basicamente do


hardware e software

Um sistema computacional é composto basicamente do


hardware e software

Programas Composto de um
aplicativos ou mais
destinados ao processadores
usuário do
sistema, que
constituem a razão
de seu uso.

Exemplo: editores Memória RAM e


de texto,
navegadores de
internet ou jogos

Periféricos... 8

4
23/03/2016

Ou dispositivos de entrada/saída

São quem permitem a interação do processador e a


memória com o mundo exterior de várias formas, como:

(a) Interação com os usuários


através da

teclado

tela gráfica e tela toque

mouse
9

Ou dispositivos de entrada/saída

São quem permitem a interação do processador e a


memória com o mundo exterior de várias formas, como:

(b) Captura e reprodução de


áudio e vídeo através de:

câmeras microfone alto falantes

10

5
23/03/2016

Ou dispositivos de entrada/saída

São quem permitem a interação do processador e a


memória com o mundo exterior de várias formas, como:

(c) Escrita e leitura de


informação, através de

discos óticos
(CD-ROM, DVD-ROM)
discos rígidos

discos de estado sólido


(baseados em memória flash) 11

Ou dispositivos de entrada/saída

São quem permitem a interação do processador e a


memória com o mundo exterior de várias formas, como:

(d) Comunicação com outros


computadores, através de

placa de rede

12

6
23/03/2016

Ou dispositivos de entrada/saída

São quem permitem a interação do processador e a


memória com o mundo exterior de várias formas, como:

(d) Impressão de
informações, através de:

impressoras plotadoras

13

É o cérebro do computador, responsável pela


execução das tarefas enviadas pelos programas.

Tarefa: Abstração usada pelo S.O. para designar a execução de um


programa.
Exemplo: Programa aplicativo navegador de Internet

Buscar via rede os elementos que compõem a página

Receber e tratar os eventos


do usuário (clicks) no
navegador de internet

Receber e analisar
as imagens

14

7
23/03/2016

É o cérebro do computador, responsável pela


execução das tarefas enviadas pelos programas.
Além disso, ele também é responsável por:
Continuamente ler tarefas e informações dos periféricos e da
memória,
Processar essas tarefas e informações e enviar os resultados de
volta à memória ou a outros periféricos.

É constituído por:

Unidade lógica aritmética (ULA) → que realiza os cálculos e operações


lógicas;

Um conjunto de registradores (pequena memória de alta velocidade) para


armazenar as tarefas que estão sendo executadas no momento;

Um conjunto de registradores para coordenação das tarefas do


computador, sincronização de todo o processamento do computador.
15

Responsável por armazenar as tarefas em execução.


Memória RAM

Memória de leitura e gravação, utilizada para armazenamento temporário


de tarefas e informações enviadas pelo usuário. É um tipo de memória
volátil (cuja as informações são perdidas depois do desligamento do
computador).

Memória ROM

Memória de leitura apenas, quase permanente, pois, já vem com as


tarefas gravadas de fábrica.

Exemplo: Tarefas elementares para que


o computador inicialize.

16

8
23/03/2016

São uma via de comunicação pelo qual o processador


se comunica com a memória e os periféricos
Portanto: Todas as transferências de dados entre processador,
memória e periféricos são feitas através dos barramentos.

Para cada tipo de conjunto de informações existe um barramento


dedicado

O barramento de endereços indica a


posição de memória (ou o dispositivo) a
acessar,

O barramento de controle indica a


operação a efetuar (leitura ou escrita) e o

O barramento de dados transporta a


informação indicada entre o processador
e a memória.

17

Um sistema computacional é composto basicamente do


hardware e software

Composto por Composto de um ou


programas aplicativos mais processadores,
destinados ao usuário Memória RAM e
do sistema, que Periféricos.
constituem a razão de
seu uso.

Exemplo: editores de
texto, navegadores de
internet ou jogos

Figura Sistema Computacional

18

9
23/03/2016

Entre os Programas Aplicativos e o Hardware existe uma


camada de software mais complexa denominada
genericamente de Sistema Operacional

Figura Sistema Computacional

19

Entre os Programas Aplicativos e o Hardware existe uma


camada de software mais complexa denominada
genericamente de Sistema Operacional

Figura Sistema Computacional

Função: Colocar em funcionamento o hardware


através do gerenciamento geral da máquina.
20

10
23/03/2016

Em um computador um software é a parte lógica cuja


função é fornecer tarefas ao hardware.
Existem três diferentes tipos de softwares:

1. Software de Base

São softwares que permitem a operação e a


programação do computador.

Exemplos: Sistemas Operacionais e Linguagens de


Programação

21

Em um computador um software é a parte lógica cuja


função é fornecer tarefas ao hardware.
Existem três diferentes tipos de softwares:

2. Software Aplicativo

São softwares que permitem a realização de tarefas


pelos usuários.

Exemplos: Processadores de texto e jogos

22

11
23/03/2016

Em um computador um software é a parte lógica cuja


função é fornecer tarefas ao hardware.
Existem três diferentes tipos de softwares:

3. Software Cliente/Servidor

São softwares desenvolvidos para rede e internet.

Exemplos: Sites e páginas da web

23

Em um computador um software é a parte lógica cuja


função é fornecer tarefas ao hardware.
O desenvolvimento do software compreende um conjunto de
etapas chamadas de ciclo de vida do software.

Esse ciclo contém 3 fases:


Definição O QUE
Definição do Problema:
Os requisitos do software são
determinados (determinando-se
o que o cliente quer), a sua
Desenvolvimento
viabilidade é estudada e o
planejamento das atividades é
elaborado.

Manutenção

24

12
23/03/2016

Em um computador um software é a parte lógica cuja


função é fornecer tarefas ao hardware.
O desenvolvimento do software compreende um conjunto de
etapas chamadas de ciclo de vida do software.

Esse ciclo contém 3 fases:


Definição O QUE
Manutenção:
Alterações são realizadas
conforme a necessidade do
cliente.
Desenvolvimento

Manutenção ALTERAÇÕES

25

Em um computador um software é a parte lógica cuja


função é fornecer tarefas ao hardware.
O desenvolvimento do software compreende um conjunto de
etapas chamadas de ciclo de vida do software.

Esse ciclo contém 3 fases:


Definição O QUE
Desenvolvimento:
Projetar a Solução
(ALGORITMO
ALGORITMO)
ALGORITMO
Codificar a Solução
(Programar em uma Desenvolvimento COMO
Linguagem de Programação)
Programação
Testar o Programa

Manutenção ALTERAÇÕES

26

13
23/03/2016

Em um computador um software é a parte lógica cuja


função é fornecer tarefas ao hardware.
O desenvolvimento do software compreende um conjunto de
etapas chamadas de ciclo de vida do software.

Esse ciclo contém 3 fases:


Definição O QUE
Desenvolvimento:
Etapas que
Projetar a Solução exigem
(ALGORITMO
ALGORITMO)
ALGORITMO Documentação
Codificar a Solução
(Programar em uma Desenvolvimento COMO
Linguagem de Programação)
Programação
Testar o Programa

Manutenção ALTERAÇÕES

27

Um algoritmo é uma sequencia de instruções bem


definidas, não ambíguas e finita, necessárias para
execução de uma tarefa computacional.

Exemplo: Podemos escrever um primeiro algoritmo, utilizando


português coloquial, que descreva o comportamento na
resolução de uma determinada atividade, como, por exemplo a
troca de uma lâmpada.
Note que: Seguimos uma
sequencia de ações Algoritmo 1
A sequenciação tem como • Pegar uma escada;
objetivo reger o fluxo de • Posicionar a escada embaixo da lâmpada;
execuções de um • Buscar a lâmpada nova;
algoritmo, determinando • Subir na escada;
qual ação será executada • Retirar a lâmpada velha;
e qual vem a seguir. • Colocar a lâmpada nova.
28

14
23/03/2016

O algoritmo 1 tem um objetivo bem definido: trocar uma lâmpada.


Porém, e se a lâmpada não estivesse queimada?

A execução das ações conduziria a uma troca, independente de a


lâmpada estar ou não queimada, por que, essa possibilidade não foi
prevista na sua construção.

Para solucionar essa necessidade, podemos efetuar um teste. Uma


solução para esse novo algoritmo seria:
Algoritmo 2
• Acionar o interruptor;
• Se a lâmpada não acender, então
• Pegar uma escada;
• Posicionar a escada embaixo da lâmpada;
• Buscar a lâmpada nova;
• Subir na escada;
• Retirar a lâmpada velha;
29

Enfim, um algoritmo nada mais é do que uma receita que


mostra passo a passo os procedimentos necessários para
a resolução de uma tarefa.

Ele não responde a pergunta “o


o que fazer?”,
fazer? mas sim
“como
como fazer”.
fazer

Os algoritmos são utilizados na área de programação para


descrever as etapas que precisam ser efetuadas para que
um programa execute as tarefas que lhe são designadas.

30

15
23/03/2016

A próxima etapa na fase de Desenvolvimento do Ciclo do


Software seria a Codificação da Solução em uma
Linguagem de Programação.

A linguagem de programação é como uma língua normal, um grupo


de palavras com significados.

No caso da programação, a maioria das linguagens é escrita em


Inglês.

Estas linguagens fazem o computador processar cada etapa designada


pelo algoritmo.

31

As Linguagens de Programação são classificadas conforme


sua estrutura:
Linguagem de Maquina (L.M.)

O processador só compreende esse tipo de linguagem.


Um programa escrito nesse tipo de linguagem é muito
difícil de ser entendido pelas pessoas

Linguagem de Baixo Nível

São linguagens de programação nas quais os programas


são escritos em uma notação que esta próxima da
linguagem de máquina.

32

16
23/03/2016

Linguagem de Alto Nível (L.A.N.)

São linguagens nas quais se pode escrever programas


em uma notação próxima a maneira natural de
expressar o problema que se deseja resolver.
É independente da máquina, ou seja, as instruções dos
programas não dependem do projeto de hardware
Ela fácil e compreensível a linguagem humana.

Exemplo:
Exemplo: ;

Java, C, FORTRAN, BASIC, PASCAL são exemplos de


linguagens de alto nível

33

A Codificação da Solução proposta (pelo Algoritmo) considera


os seguintes passos:
1. Escrita do Programa Fonte em um Programa Editor
Programa Editor: Ambiente onde os programas podem ser escritos
Programa Fonte: Programa escrito em uma linguagem de alto nível pelo
programador.
2. Fase de Compilação: Efetua a
tradução do programa fonte para
linguagem de máquina.
Programa Objeto: É o programa
resultante dessa tradução.
3. Fase de Ligação: Anexa ao programa
objeto funções necessárias para sua
execução
Programa Ligador:
Ligador: É o programa Editor
responsável pela fase de ligação
Programa Executável: É o programa
que pode ser executado pelo S.O. 34

17
23/03/2016

A Codificação da Solução proposta (pelo Algoritmo) considera


os seguintes passos:

Interpretador
Na interpretação, a conversão das instruções é feita a medida que o
programa é executado. Ou seja, cada linha que é lida e convertida para a
linguagem de máquina e então executada.

É muito importante notar que neste caso nenhum novo arquivo é criado,
como, por exemplo, o programa objeto.

Desvantagem: A execução do programa interpretado requer que o


interpretador da linguagem esteja sendo executado no computador.

Exemplo de linguagens interpretadas: MATLAB e JavaScript.

35

FIM AULA 1

36

18

Você também pode gostar