Aula01 introducao

101
-1

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
101
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Aula01 introducao

  1. 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. 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
  3. 3. Introdução a Computação
  4. 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. 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).
  6. 6. Introdução a Computação
  7. 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. 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. 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. 10. Introdução a Computação Existem 10 tipos de pessoas… aquelas que entendem binário… e as que não entendem.
  11. 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. 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.
  13. 13. Introdução a Computação http://freeweb.supereva.com/nessunoforever/flash/hanoi/index.htm?p
  14. 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. 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. 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. 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. 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. 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
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×