SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
Introdução a Computação
• O que é um computador?
“Um computador é uma coleção de componentes
que realizam operações lógicas e aritméticas
sobre um grande volume de dados.” (F. K. Miyazawa)
Introdução a Computação
Um computador é composto por:
• Unidades de entrada de dados: Ex.: teclado,
mouse, câmera de vídeo, etc…
• Unidades de saída de dados Ex.: monitor,
impressora, etc…
• Unidades de armazenamento Ex.: memória RAM,
memória ROM, discos rígidos, cache. etc...
• Unidade Central de Processamento – CPU
• Unidade Lógica Aritmética – ULA
Introdução a Computação
Introdução a Computação
Termos técnicos:
• Hardware: Componentes mecânicos e eletro-
eletrônicos (Parte dura do computador).
• Software: Seqüência de instrucões e comandos que
fazem o computador realizar determinada tarefa
(Programas de computador).
• Sistema Operacional: Coleção de programas que
gerencia e aloca recursos de hardware e software
(Linux, Unix, Windows).
Introdução a Computação
• Linguagem de Máquina: Conjunto de instruções
que podem ser interpretados e executados
diretamente pela CPU.
• Linguagem de alto nível: Linguagem que
independe do conjunto de instrucões da linguagem de
máquina (Pascal, C, Algol, BASIC).
• Compilador: Tradutor de programas escritos em
uma linguagem de programação para programas em
linguagem de máquina (GCC).
Introdução a Computação
Introdução a Computação
Bits e Bytes:
• A menor unidade de informação de um computador
é o Bit, um Bit pode assumir os valores 0 ou 1.
• Um Byte é um conjunto de oito Bits.
• Dados são armazenados na base binária não na
decimal.
0 = 00000000
1 = 00000001
10 = 00001010
255 = 11111111
Introdução a Computação
Desafio:
Você possui dez caixas vazias e deve distribuir
nessas caixas 1000 moedas de tal forma que, quando
solicitado, você possa retornar um número qualquer
de moedas sem retirá-las das caixas.
Cada caixa comporta pelo menos 1000 moedas e os
valores solicitados serão todos maiores que zero.
Introdução a Computação
Solução:
Usando a base binária…
Caixas com:
1 moeda 256 moedas
2 moedas 488 moedas
4 moedas
8 moedas
16 moedas
32 moedas
64 moedas
128 moedas
Introdução a Computação
Existem 10 tipos de pessoas…
aquelas que entendem binário…
e as que não entendem.
Introdução a Computação
Desafio:
Em um lado de um rio se encontram, você, um lobo
um coelho e um repolho.
Você possui uma canoa que te permite levar apenas
um deles de cada vez, sabendo que caso o lobo fique
sozinho com o coelho o lobo o come e o mesmo
acontece quando o coelho fica sozinho com o repolho.
Como fazer para atravessar todos eles em segurança
para a outra margem do rio?
Introdução a Computação
Desafio:
Suponha que você possui 3 pinos, A, B e C e que no
pino A estão dispostos 3 discos de tamanhos
diferentes em ordem crescente de cima para baixo
(menor em cima). O objetivo é levar os 3 discos do
pino A para o pino C, usando o pino B como auxiliar
e obedecendo as seguintes restrições:
•Pode-se mover apenas 1 pino de cada vez
•Não se pode colocar um pino maior sobre um
menor.
Introdução a Computação
http://freeweb.supereva.com/nessunoforever/flash/hanoi/index.htm?p
Introdução a Computação
Algoritmos:
• Um algoritmo é uma seqüência de passos com o
objetivo de executar uma tarefa.
• São muito comuns, receitas, manuais
• As soluções para os problemas anteriores são
algoritmos.
• Computacionalmente:
“Um procedimento computacional que recebe
valores de entrada e produz valores de saída.”
Introdução a Computação
Exemplo:
• Entrada: Uma seqüência aleatória de números.
• Saída: A mesma seqüência de números ordenada.
Se a entrada é :
(8, 49, 12, 23)
o seu algoritmo deve produzir como saída:
(8, 12, 23, 49)
• Algoritmo Correto: Sempre termina e para
qualquer instância de entrada produz uma saída
correta
Introdução a Computação
Algoritmo de Euclides (Cálculo do MDC):
• Entrada: 2 valores inteiros positivos m e n (m > n).
• Saída: O Máximo Divisor Comum de m e n.
• Passo 1: Faça x = m e y = n
• Passo 2: Calcule o resto de x por y, isto é
r = x mod y
• Passo 3: Faça x = y e y = r
• Passo 4: Se r != 0 (r diferente de zero) volte para o
passo 2, senão retorne x como resposta.
mdc(x, y) = mdc(y, x mod y)
mdc(x, 0) = x
Introdução a Computação
Computacionalmente:
x recebe m
y recebe n
Repita
r recebe x mod y
x recebe y
y recebe r
Até que r == 0
Imprime x
Introdução a Computação
Na linguagem C:
x = m;
y = n;
do {
r = x % y;
x = y;
y = r;
}while( r != 0 );
printf(“%d”, x);
Introdução a Computação
Para ver depois:
• JL Hennessy e DA Patterson, “Arquitetura de
Computadores – Uma Abordagem Quantitativa”
Ed Campus.
• Mais desafios:
http://www2.fundao.pro.br/pages/desafios.asp
• Torre de Hanoi:
http://freeweb.supereva.com/nessunoforever/flash/hanoi/index.htm?p
• Página da disciplina:
http://www.las.ic.unicamp.br/~chenca/mc102/mc102.html

Mais conteúdo relacionado

Mais procurados

Sistemas digitais - Sistemas de Numeração
Sistemas digitais - Sistemas de NumeraçãoSistemas digitais - Sistemas de Numeração
Sistemas digitais - Sistemas de NumeraçãoCarlos Pereira
 
Interligados Apresentação Final
Interligados Apresentação FinalInterligados Apresentação Final
Interligados Apresentação FinalHugo Leonardo
 
Trabalho de fundamentos e aplicaticos celine e diana1
Trabalho de fundamentos e aplicaticos celine e diana1Trabalho de fundamentos e aplicaticos celine e diana1
Trabalho de fundamentos e aplicaticos celine e diana1Diana Alves
 
SISTEMAS digitais SISTEMAS DE NUMERAÇÃO
SISTEMAS digitais SISTEMAS DE NUMERAÇÃOSISTEMAS digitais SISTEMAS DE NUMERAÇÃO
SISTEMAS digitais SISTEMAS DE NUMERAÇÃOCarlos Pereira
 
Unidades de Informacao, Sistemas Numericos
Unidades de Informacao, Sistemas NumericosUnidades de Informacao, Sistemas Numericos
Unidades de Informacao, Sistemas NumericosArthur Emanuel
 
Aula 05- IN1 - IFES - 2 semestre 2010
Aula   05- IN1 - IFES - 2 semestre 2010Aula   05- IN1 - IFES - 2 semestre 2010
Aula 05- IN1 - IFES - 2 semestre 2010Moises Omena
 
Aula 08- IN1 - IFES - 2 semestre 2010
Aula   08- IN1 - IFES - 2 semestre 2010Aula   08- IN1 - IFES - 2 semestre 2010
Aula 08- IN1 - IFES - 2 semestre 2010Moises Omena
 
Aula 8 - Lógica de Programação - Variáveis, Tipos de dados e Operadores
Aula 8 - Lógica de Programação - Variáveis, Tipos de dados e OperadoresAula 8 - Lógica de Programação - Variáveis, Tipos de dados e Operadores
Aula 8 - Lógica de Programação - Variáveis, Tipos de dados e OperadoresAndré Constantino da Silva
 
Introducao Computacao Slide 2
Introducao Computacao Slide 2Introducao Computacao Slide 2
Introducao Computacao Slide 2Duílio Andrade
 
FORTRAN 90 - Calculos numericos
FORTRAN 90 - Calculos numericosFORTRAN 90 - Calculos numericos
FORTRAN 90 - Calculos numericosDafmet Ufpel
 

Mais procurados (11)

Sistemas digitais - Sistemas de Numeração
Sistemas digitais - Sistemas de NumeraçãoSistemas digitais - Sistemas de Numeração
Sistemas digitais - Sistemas de Numeração
 
Aula 06 - Sistema Binário
Aula 06 - Sistema BinárioAula 06 - Sistema Binário
Aula 06 - Sistema Binário
 
Interligados Apresentação Final
Interligados Apresentação FinalInterligados Apresentação Final
Interligados Apresentação Final
 
Trabalho de fundamentos e aplicaticos celine e diana1
Trabalho de fundamentos e aplicaticos celine e diana1Trabalho de fundamentos e aplicaticos celine e diana1
Trabalho de fundamentos e aplicaticos celine e diana1
 
SISTEMAS digitais SISTEMAS DE NUMERAÇÃO
SISTEMAS digitais SISTEMAS DE NUMERAÇÃOSISTEMAS digitais SISTEMAS DE NUMERAÇÃO
SISTEMAS digitais SISTEMAS DE NUMERAÇÃO
 
Unidades de Informacao, Sistemas Numericos
Unidades de Informacao, Sistemas NumericosUnidades de Informacao, Sistemas Numericos
Unidades de Informacao, Sistemas Numericos
 
Aula 05- IN1 - IFES - 2 semestre 2010
Aula   05- IN1 - IFES - 2 semestre 2010Aula   05- IN1 - IFES - 2 semestre 2010
Aula 05- IN1 - IFES - 2 semestre 2010
 
Aula 08- IN1 - IFES - 2 semestre 2010
Aula   08- IN1 - IFES - 2 semestre 2010Aula   08- IN1 - IFES - 2 semestre 2010
Aula 08- IN1 - IFES - 2 semestre 2010
 
Aula 8 - Lógica de Programação - Variáveis, Tipos de dados e Operadores
Aula 8 - Lógica de Programação - Variáveis, Tipos de dados e OperadoresAula 8 - Lógica de Programação - Variáveis, Tipos de dados e Operadores
Aula 8 - Lógica de Programação - Variáveis, Tipos de dados e Operadores
 
Introducao Computacao Slide 2
Introducao Computacao Slide 2Introducao Computacao Slide 2
Introducao Computacao Slide 2
 
FORTRAN 90 - Calculos numericos
FORTRAN 90 - Calculos numericosFORTRAN 90 - Calculos numericos
FORTRAN 90 - Calculos numericos
 

Destaque

Aula 12 – Sistema de Numeração (Conversão de Bases)
Aula 12 – Sistema de Numeração (Conversão de Bases)Aula 12 – Sistema de Numeração (Conversão de Bases)
Aula 12 – Sistema de Numeração (Conversão de Bases)Vitor Hugo Melo Araújo
 
Sistemas de Numeração e Conversão de Bases
Sistemas de Numeração e Conversão de BasesSistemas de Numeração e Conversão de Bases
Sistemas de Numeração e Conversão de BasesLeandro Costa
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionIn a Rocket
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanPost Planner
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting PersonalKirsty Hulse
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldabaux singapore
 

Destaque (7)

Aula 12 – Sistema de Numeração (Conversão de Bases)
Aula 12 – Sistema de Numeração (Conversão de Bases)Aula 12 – Sistema de Numeração (Conversão de Bases)
Aula 12 – Sistema de Numeração (Conversão de Bases)
 
Sistemas de Numeração e Conversão de Bases
Sistemas de Numeração e Conversão de BasesSistemas de Numeração e Conversão de Bases
Sistemas de Numeração e Conversão de Bases
 
Learn BEM: CSS Naming Convention
Learn BEM: CSS Naming ConventionLearn BEM: CSS Naming Convention
Learn BEM: CSS Naming Convention
 
How to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media PlanHow to Build a Dynamic Social Media Plan
How to Build a Dynamic Social Media Plan
 
SEO: Getting Personal
SEO: Getting PersonalSEO: Getting Personal
SEO: Getting Personal
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
 
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job? Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
 

Semelhante a Introdução Computação

slide arq H & S (1) (1).pdfslide arq H & S
slide arq H & S (1) (1).pdfslide arq H & Sslide arq H & S (1) (1).pdfslide arq H & S
slide arq H & S (1) (1).pdfslide arq H & SDenivalSouza1
 
Conceitos e técnicas de programação introdução
Conceitos e técnicas de programação introduçãoConceitos e técnicas de programação introdução
Conceitos e técnicas de programação introduçãoRobson Ferreira
 
Redes Neurais Artificiais
Redes Neurais ArtificiaisRedes Neurais Artificiais
Redes Neurais ArtificiaisMarcos Castro
 
Princípios de Sistemas da Informação Unidade 1 Unip
Princípios de Sistemas da Informação Unidade 1 UnipPrincípios de Sistemas da Informação Unidade 1 Unip
Princípios de Sistemas da Informação Unidade 1 UnipHeber Gutenberg
 
Aula02 - Sistemas Numéricos computacionais
Aula02 - Sistemas Numéricos computacionaisAula02 - Sistemas Numéricos computacionais
Aula02 - Sistemas Numéricos computacionaisJorge Ávila Miranda
 
historia dos computadores e sistemas numéricos
historia dos computadores e sistemas numéricoshistoria dos computadores e sistemas numéricos
historia dos computadores e sistemas numéricosEvandro Manara Miletto
 
Algoritmos, Inteligência Artificial e Políticas Públicas
Algoritmos, Inteligência Artificial e Políticas PúblicasAlgoritmos, Inteligência Artificial e Políticas Públicas
Algoritmos, Inteligência Artificial e Políticas PúblicasNathalia Sautchuk Patricio
 
Técnicas de Prototipação II - Physical Computing - Aula 01
Técnicas de Prototipação II - Physical Computing - Aula 01Técnicas de Prototipação II - Physical Computing - Aula 01
Técnicas de Prototipação II - Physical Computing - Aula 01Tiago Barros
 

Semelhante a Introdução Computação (20)

ArqOrgCom.ppt
ArqOrgCom.pptArqOrgCom.ppt
ArqOrgCom.ppt
 
slide arq H & S (1) (1).pdfslide arq H & S
slide arq H & S (1) (1).pdfslide arq H & Sslide arq H & S (1) (1).pdfslide arq H & S
slide arq H & S (1) (1).pdfslide arq H & S
 
Introdução às TIC
Introdução às TICIntrodução às TIC
Introdução às TIC
 
Conceitos e técnicas de programação introdução
Conceitos e técnicas de programação introduçãoConceitos e técnicas de programação introdução
Conceitos e técnicas de programação introdução
 
Redes Neurais Artificiais
Redes Neurais ArtificiaisRedes Neurais Artificiais
Redes Neurais Artificiais
 
COMPUTADOR_122756.pdf
COMPUTADOR_122756.pdfCOMPUTADOR_122756.pdf
COMPUTADOR_122756.pdf
 
Eletrônica digital aula 01
Eletrônica digital   aula 01Eletrônica digital   aula 01
Eletrônica digital aula 01
 
Sistemas de numeração
Sistemas de numeraçãoSistemas de numeração
Sistemas de numeração
 
Princípios de Sistemas da Informação Unidade 1 Unip
Princípios de Sistemas da Informação Unidade 1 UnipPrincípios de Sistemas da Informação Unidade 1 Unip
Princípios de Sistemas da Informação Unidade 1 Unip
 
Hardware
HardwareHardware
Hardware
 
Aula02 - Sistemas Numéricos computacionais
Aula02 - Sistemas Numéricos computacionaisAula02 - Sistemas Numéricos computacionais
Aula02 - Sistemas Numéricos computacionais
 
historia dos computadores e sistemas numéricos
historia dos computadores e sistemas numéricoshistoria dos computadores e sistemas numéricos
historia dos computadores e sistemas numéricos
 
Historia_Computacao.pdf
Historia_Computacao.pdfHistoria_Computacao.pdf
Historia_Computacao.pdf
 
Algoritmos, Inteligência Artificial e Políticas Públicas
Algoritmos, Inteligência Artificial e Políticas PúblicasAlgoritmos, Inteligência Artificial e Políticas Públicas
Algoritmos, Inteligência Artificial e Políticas Públicas
 
Técnicas de Prototipação II - Physical Computing - Aula 01
Técnicas de Prototipação II - Physical Computing - Aula 01Técnicas de Prototipação II - Physical Computing - Aula 01
Técnicas de Prototipação II - Physical Computing - Aula 01
 
Microprogramacao
MicroprogramacaoMicroprogramacao
Microprogramacao
 
Microprogramacao
MicroprogramacaoMicroprogramacao
Microprogramacao
 
Arquitetura de Computadores.pptx
Arquitetura de Computadores.pptxArquitetura de Computadores.pptx
Arquitetura de Computadores.pptx
 
Aula 04
Aula 04Aula 04
Aula 04
 
Sistemas_Digitais_2017.pdf
Sistemas_Digitais_2017.pdfSistemas_Digitais_2017.pdf
Sistemas_Digitais_2017.pdf
 

Introdução Computação

  • 1. Introdução a Computação • O que é um computador? “Um computador é uma coleção de componentes que realizam operações lógicas e aritméticas sobre um grande volume de dados.” (F. K. Miyazawa)
  • 2. Introdução a Computação Um computador é composto por: • Unidades de entrada de dados: Ex.: teclado, mouse, câmera de vídeo, etc… • Unidades de saída de dados Ex.: monitor, impressora, etc… • Unidades de armazenamento Ex.: memória RAM, memória ROM, discos rígidos, cache. etc... • Unidade Central de Processamento – CPU • Unidade Lógica Aritmética – ULA
  • 4. Introdução a Computação Termos técnicos: • Hardware: Componentes mecânicos e eletro- eletrônicos (Parte dura do computador). • Software: Seqüência de instrucões e comandos que fazem o computador realizar determinada tarefa (Programas de computador). • Sistema Operacional: Coleção de programas que gerencia e aloca recursos de hardware e software (Linux, Unix, Windows).
  • 5. Introdução a Computação • Linguagem de Máquina: Conjunto de instruções que podem ser interpretados e executados diretamente pela CPU. • Linguagem de alto nível: Linguagem que independe do conjunto de instrucões da linguagem de máquina (Pascal, C, Algol, BASIC). • Compilador: Tradutor de programas escritos em uma linguagem de programação para programas em linguagem de máquina (GCC).
  • 7. Introdução a Computação Bits e Bytes: • A menor unidade de informação de um computador é o Bit, um Bit pode assumir os valores 0 ou 1. • Um Byte é um conjunto de oito Bits. • Dados são armazenados na base binária não na decimal. 0 = 00000000 1 = 00000001 10 = 00001010 255 = 11111111
  • 8. Introdução a Computação Desafio: Você possui dez caixas vazias e deve distribuir nessas caixas 1000 moedas de tal forma que, quando solicitado, você possa retornar um número qualquer de moedas sem retirá-las das caixas. Cada caixa comporta pelo menos 1000 moedas e os valores solicitados serão todos maiores que zero.
  • 9. Introdução a Computação Solução: Usando a base binária… Caixas com: 1 moeda 256 moedas 2 moedas 488 moedas 4 moedas 8 moedas 16 moedas 32 moedas 64 moedas 128 moedas
  • 10. Introdução a Computação Existem 10 tipos de pessoas… aquelas que entendem binário… e as que não entendem.
  • 11. Introdução a Computação Desafio: Em um lado de um rio se encontram, você, um lobo um coelho e um repolho. Você possui uma canoa que te permite levar apenas um deles de cada vez, sabendo que caso o lobo fique sozinho com o coelho o lobo o come e o mesmo acontece quando o coelho fica sozinho com o repolho. Como fazer para atravessar todos eles em segurança para a outra margem do rio?
  • 12. Introdução a Computação Desafio: Suponha que você possui 3 pinos, A, B e C e que no pino A estão dispostos 3 discos de tamanhos diferentes em ordem crescente de cima para baixo (menor em cima). O objetivo é levar os 3 discos do pino A para o pino C, usando o pino B como auxiliar e obedecendo as seguintes restrições: •Pode-se mover apenas 1 pino de cada vez •Não se pode colocar um pino maior sobre um menor.
  • 14. Introdução a Computação Algoritmos: • Um algoritmo é uma seqüência de passos com o objetivo de executar uma tarefa. • São muito comuns, receitas, manuais • As soluções para os problemas anteriores são algoritmos. • Computacionalmente: “Um procedimento computacional que recebe valores de entrada e produz valores de saída.”
  • 15. Introdução a Computação Exemplo: • Entrada: Uma seqüência aleatória de números. • Saída: A mesma seqüência de números ordenada. Se a entrada é : (8, 49, 12, 23) o seu algoritmo deve produzir como saída: (8, 12, 23, 49) • Algoritmo Correto: Sempre termina e para qualquer instância de entrada produz uma saída correta
  • 16. Introdução a Computação Algoritmo de Euclides (Cálculo do MDC): • Entrada: 2 valores inteiros positivos m e n (m > n). • Saída: O Máximo Divisor Comum de m e n. • Passo 1: Faça x = m e y = n • Passo 2: Calcule o resto de x por y, isto é r = x mod y • Passo 3: Faça x = y e y = r • Passo 4: Se r != 0 (r diferente de zero) volte para o passo 2, senão retorne x como resposta. mdc(x, y) = mdc(y, x mod y) mdc(x, 0) = x
  • 17. Introdução a Computação Computacionalmente: x recebe m y recebe n Repita r recebe x mod y x recebe y y recebe r Até que r == 0 Imprime x
  • 18. Introdução a Computação Na linguagem C: x = m; y = n; do { r = x % y; x = y; y = r; }while( r != 0 ); printf(“%d”, x);
  • 19. Introdução a Computação Para ver depois: • JL Hennessy e DA Patterson, “Arquitetura de Computadores – Uma Abordagem Quantitativa” Ed Campus. • Mais desafios: http://www2.fundao.pro.br/pages/desafios.asp • Torre de Hanoi: http://freeweb.supereva.com/nessunoforever/flash/hanoi/index.htm?p • Página da disciplina: http://www.las.ic.unicamp.br/~chenca/mc102/mc102.html