O COMPUTADOR A PAPEL E OS PRINCÍPIOS BÁSICOS
DO FUNCIONAMENTO DE UM COMPUTADOR

Valdemar W. Setzer
Uma palestra/aula do projeto Embaixadores da Matemática

Departamento de Ciência da Computação, IME-USP
www.ime.usp.br/~vwsetzer – esta versão: 4/11/19

AVALIAÇÕES DE PARTICIPANTES

Nesta página encontram-se, em ordem cronológica reversa, transcrições (somente a partir de 16/5/18) das avaliações de participantes desta palestra, conforme escreveram no One-minute paper no fim da mesma, respondendo: [1] Coisa mais importante aprendida; [2] Maior dúvida que ficou; [3] Comentários. As transcrições são literais (sic), inclusive com erros ortográficos e de redação; as partes ilegíveis são anotadas com [?]. Os originais estão à disposição para exame. Ver na Internet o resumo da palestra (com duração, material necessário etc.), o artigo (com mais detalhes do que a aula) e a apresentação em ppt. Quando se trata de alunos e eles anotaram a série em que estão (sempre do ensino médio), elas são anotadas com chaves {...}. Respostas às dúvidas expressadas pelos alunos estão precedidas por RESP.; infelizmente elas têm que ser breves.

4. 30/10/19,

  1. [1] Como o computador faz o processamento dos dados. [2] Não ficou nenhuma dúvida sobre o conteúdo que fora explanado. [3] Gostei da forma como foi iniciada a palestra, de maneira dinâmica e interacional.
  2. [1] Linguagem de Programação em Python. [2] Em qual momento o apontador pode aprezentar defeito, e qual é o problema mais corriqueiro. [3] A palestra foi totalmente explicativa, embora um pouco cansativa. RESP.: Qualquer circuito do computador pode apresentar um defeito; é uma maravilha da técnica que isso ocorre com muito pouca frequência. O problema mais corriqueiro é um erro de programação, isto é, o programa não executa o que foi previsto pelo programador. Muitas vezes o programador corrige vários erros de uma vez, e acaba não sabendo qual deles fez o computador funcionar. Testa-se um programa dando dados de entrada e vendo os resultados. Por exemplo, no nosso programinha poderíamos dar os números 10, 20 e 30 e ver se a soma é realmente 60. Isso prova que o programa funciona para os dados do teste, e não para quaisquer dados. Não é possível provar matematicamente que um programa de um tamanho que não seja mínimo realmente calcula o que se deseja e que para para quaisquer dados de entrada. Isso é assunto de uma outra palestra minha.
  3. [1] A visualização, através do teatro, a lógica de programação. [2] Não ficou dúvida. [3] Gostei do Python.
  4. [1] Que o computador ou maquina não tem memoria. [2] Nenhuma você explica super bem. [3] Porque não tem mais palestras na faculdade como esta.
  5. [1] Como um computador entende os comandos e que ele só entende através de numeros. [2] Não tenho duvida. [3] Muito bom ter essa palestra e entender como tudo iniciou-se. RESP.: Um computador não entende absolutamente nada. É uma máquina puramente sintática, de seguir estritamente regras formais, matemáticas, e não tem semântica, o que seria necessário para um entendimento. Atenção, eu não dei uma palestra sobre história da computação, o que é também importante.
  6. [1] O computador não tem memoria, e que só consegue ler somente em número. [2] Não tenho, gostei da explicação. [3] Gostei da interação com o grupo. RESP.: Os computadores têm unidades de armazenamento de dados: a unidade central, erradamente chamada de 'memória' (errado pois não sabemos como a nossa funciona, e sabe-se muito bem com a do computador funciona), e as unidades periférica, como os discos magnéticos (HDs(. Estes últimos tendem a desaparecer, pois é uma aberração ter-se um dispositivo mecânico no meio de uma máquina puramente eletrônicam fora as unidades de entrada (como o teclado, leitor óptico de barras etc.)m e de saída (como o monitor de vídeo, impressora etc.). Hoje em dia pode-se trocar um HD por uma unidade de armazenamento de estado sólido, como o SSD (também chamado de SSD-HD); o computador fica muitissimamente mais rápido.
  7. [1] Que tudo no computador é número. [2] Nenhuma. [3] Gostei da interação do teatro.
  8. [1] Que tudo no computador é representado por números. [2] Não tive nenhuma. [3] Gostei do teatro.
  9. [1] Como funciona computado e que o computador é só número. [2] Não tenho duvidas. [3] Não tenho nenhum comentário.
  10. [1] Eu aprendi que o computador é uma máquina de matemática que não aceita infinito e números irracionais. Ele funciona com dados/números. [2] Dúvida: A programador pode trabalhar com Python para qualquer coisa sem saber outras linguagens. RESP.: Sim, é possível programar qualquer processamento de dados com a linguagem Python, pois ela é universal.
  11. [1] Aprender o como funciona o computador durante o processamento. [2] Não houve dúvidas. [3] Excelente palestra, muito esclarecedora.
  12. [1] Como funciona o computador. [2] Como o sistema binario pode executar inumeras tarefas. [3] Muito boa a explicação do funcionamento do computador através do "teatro". RESP.: Como eu disse na palestra, os computadores usam o sistema binário simplesmente por uma conveniência tecnológica (simplicidade, eficiência e confiabilidade dos circuitos eletrônicos). Seria possível construir computadores usando qualquer sistema numérico.
  13. [1] A contribuição de von Neumann, que permite colocar programa e dados juntos. [2] Como funciona o computador eletronicamente? Não existe um apontador mecânico, etc. RESP.: Sim, foi devido ao grande matemático John von Neumann que surgiu a ideia de representar instruções e dados exatamente da mesma maneira na 'memória' do computador. Isso permitiu um grande desenvolvimento dos computadores. Veja
    https://pt.wikipedia.org/wiki/Arquitetura_de_von_Neumann
    Quanto ao funcionamento eletrônico, ele é baseado essencialmente em circuitos biestáveis, isto é, que estão sempre um de dois possiveis estados (e assim podem representar 0 em um estado e 1 no outro), e podem ser mudados de estado. Veja
    https://en.wikipedia.org/wiki/Flip-flop_(electronics)
  14. [1] Aprendi o funcionamento básico da programação de baixo nivel. [2] Nenhuma.
  15. [1] Instrução do computador sendo sequencial. [2] Nenhuma dúvida. [3] Alguns alunos - mesmo que sendo verdade - podem se sentir menos motivados em continuar o curso após as palavras do palestrante que o curso não seria de primeira linha. Uma abordagem diferente teria retorno maior em estes mesmos alunos de um "curso não de primeira linha" poderiam indicar a mais pessoas o curso de pós graduação ou mesmo as palestras. RESP.: Desculpem se me expressei mal. Sabendo que a FMU não tem pós-graduação em matemática, o que eu disse é que, se os alunos forem fazer pós-graduação, deviam procurar uma faculdade de primeira linha, pois o último diploma é o que conta. Não emiti juízo sobre o curso da FMU, pois nem o conheço.
  16. [1] Que por mais sofisticados sejam os resultados do computador, as funções básicas dele são sempre simplificadas. [2] Não tenho dúvidas tão pertinentes que mereçam ser citadas. [3] Achei a palestra um pouco longa e também desnecessário o professor dizer de uma maneira meio rude que nosso curso, na nossa faculdade não é de primeira. Faltou um pouco de "tato". RESP.: Ver a resposta anterior.
  17. [1] A sequência de execução das instruções do computador. [2] Sem dúvidas. [3] Gostei e acho válido organizar em auditório de palco.
  18. [1] Aprendi sobre o funcionamento do computador, de forma divertida (com o teatrinho). [2] A humanidade pode levar o uso dos computadores ao extremo, qual seria, na opinião do professor, algo extremo bom e algo extremo ruim. [3] Gostaria de comentar a respeito da "substituição" do homem pela máquina e gostaria de agradecer e parabenizar pelos comentários pertinentes à respeito disso. RESP.: O computador já foi levado a um extremo: os celulares, que permitem o uso do computador e da Internet em qualquer lugar, em qualquer momento, por qualquer idade. Os resultados terríveis disso estão começando a ser reconhecidos; dou palestras alertando sobre os problemas que os computadores causam há mais de 45 anos. Em 1974 dei a primeira disciplina no Brasil sobre impacto social e individual dos computadores. Ultimamente, apareceu o enorme problema causado por sistemas de 'aprendizado' de máquina (nome errado, pois não se sabe como o ser humano aprende). Leia meu artigo
    www.ime.usp.br/~vwsetzer/IA-problemas.pdf
  19. [1] Aprendemos que todo computador é formado por números, até suas letras, escritas, etc. Entendemos também que o computador trata-se de uma máquina "burra" e funciona através de comandos, coletando dados, etc. [2] Não ficou dúvidas pois tudo foi bem explicado e claro. [3] A maneira interativa a qual ele coloca os participantes para interagir com o assunto, o teatro afim de facilitar o entendimento por meio da vivência.
  20. [1] Que é possível explicar a lógica de forma lúdica. [2] Como aplicar isso em sala de aula. [3] Achei bem dinâmica. RESP.: Eu mostrei como aplicar o que dei em sala de aula. Baixe a apresentação, faça a sua, e monte um 'computador a papel'! Leia os artigos que citei. Teste o simulador do HIPO.
  21. [1] O funcionamento do computador. [2] Não ficou dúvidas. [3] Adorei o teatrinho do computador.

3. 30/8/19 palestra dentro da III Feira do Livro da Unidade Escolar, para alunos do ensino médio da Escola Alexandre von Humboldt, Vila Anastácio, São Paulo, SP, info: Profa. Cassia Rodrigues de Jesus crj-sem-nada-cassia atarr hotmail.com

  1. {2} [1] Eu aprendi como um computador realmente funciona na base de números, e como esse processo acontece. [2] Como um computador funciona com vários acumuladores. [3] Simpático e também fiquei lisonjeado por receber um doutor nessa área de conhecimento. RESP.: Com vários acumuladores, hoje chamados de registradores, cada um deles tem que ter um número. Cada instrução em linguagem de máquina que usa um registrador tem que especificar qual registrador deve ser usado (no fundo, é como se fosse o endereço do registrador). O HIPO, como os primeiros computadores, usava apenas um registrador, que antigamente era chamado de acumulador. Na verdade, o acumulador faz parte da unidade aritmética, onde são executados os cálculos (soma, divisão etc.)
  2. {2} [1] Como funciona uma máquina e a codificação da linguagem Python. [2] Nenhuma. [3] Ótima aula, foram as 2 h mais rápidas do ano.
  3. {2} [1] Tudo foi essencial, tudo foi muito importante. [2] Nenhuma. [3] Gostei muito, muito caristmático, engraçado, e explica super bem amei a sua palestra.
  4. {3} [1] Que a linguagem de computador é feita tudo por números. [3] Apresentação foi muito criativa e muito simples de compreender. RESP.: Atenção, a linguagem de máquina é o conjunto de instruções que a unidade central de processamento (os circuitos dela, em um computador real) interpreta. Um programa é uma sequência dessas instruções.
  5. [1] Aprendi a forma de como um programa se reproduz com base nos códigos. [2] Com base nesses códigos, o que podemos fazer de muito interessante e essencial para a vida? [3] Palestra incrivel e muito interessante. RESP.: O computador penetrou em todas as áreas da vida. Quando seus pais recebem uma conta de consumo de água, ela foi gerada por um computador. O celular (#smartphone) é um computador. Hoje muitas funções dos automóveis são controladas por um computador.
  6. {2} [1] Eu aprendi que o computador nunca usa letras, usa só números e como o computador faz uma coisa de cada vez. [2] Programar. [3] Ótima palestra, explica brincando e de um jeito facil de entender. RESP.: Nem todas as pessoas se dão bem com a programação de computadores, pois para isso é preciso usar um tipo especial de pensamento, tecnicamente chamado de 'lógico-simbólico, algorítmico'. Acho que todos devem saber o que é um programa, mas não é necessário que todos saibam programar.
  7. [1] Eu aprendi que no computador é importante ter desvio incondicional e condicional e codificações das instruções. [2] Programar. [3] Deu para entender tudo, uma forma de aprender mais rápido e de um jeito simples. Palestra muito boa e engraçada. RESP.: Sim, com aquelas instruções de desvio pode-se repetir um trecho do programa. Foi por isso que o programa exemplificado na palestra era capaz de somar um número qualquer de números com apenas algumas instruções na linguagem de máquina.
  8. [1] Aprendi como um avião voa pelo livro que esta sendo publicado pelo editora de USP do Setzer. [2] Nenhuma, todo o conteúdo foi muito bem explicado.
  9. {1} [1] Como a CPU funciona e como pode ocorrer alguns erros. [2] Como poderia fazer programa de mais complequicidade. [3] Eu adorei a aula e como foi divertida e educativa. RESP.: Quando você estiver no 3° ano, experimente fazer um curso de programação pela Internet.
  10. {3} [1] Como funcionam os computadores. [2] Sobre códigos de máquina. [3] Muito boa apresentação. RESP.: No caso do HIPO, uma instrução é codificada com sua operação (soma, entrada de dados, desvio etc.) e um endereço da uma posição de memória onde deve ser colocado ou copiado um dado.
  11. {1} [1] Entendi um pouco melhor como funciona um programa dentro do computador, detalhes e dicas que eu não sabia, como tudo o que entra no computador é decodificado. [3] Gostei muito da palestra interativa (teatrinho) já que assim, é mais fácil compreender.
  12. [1] Que o computador é burro e precisa de partes á partes para processar, que cada componente tem a sua função para o funcionamento do sistema e tudo dentro do computador tem que virar números formando códigos para cada frase que é codificada vira número. [2] Não ficou nenhuma dúvida. [3] O Senhor explica muito bem.
  13. [1] Aprendi que o computador precisa de muitas coisas e funções para funcionar. [2] Não tive dúvida, compreendi tudo. [3] Gostei muito da apresentação, obrigado!
  14. {2} [1] Como funciona um computador e como funcionam os códigos. [2] Com o computador identifica o que é instrução e o que é cálculo? [3] A parte interativa da palestra foi muito importante para o meu entendimento.
  15. [1] Não importa se o +0000 tem o + ou o #-- e se você não colocar um numero negativo não funciona. [2] Não tenho, por enquanto. [3] Você apresenta muito bem!!! RESP.: No HIPO, foi convencionado que as instruções começam com + seguido de 4 dígitos decimais, dois para o código da instrução, e dois para um endereço de uma posição de memória. Um dado usado por uma instrução tem sempre um sinal + ou #-- e 4 digitos e é interpretado como um número positivo ou negativo, respectivamente.
  16. {1} [1] Com a palestra aprendi de forma simples como funciona um computador; qual a função da Unidade Central de Processamento, do Acumulador e apontador; como uma função ou comando funciona e todo o processo desde a entrada até a saída. [2] Não nenhuma.
  17. {2} [1] Algumas pequenas coisas de python. [2] Não sei. [3] Foi muito boa a palestra mas sobre os registradores eu já sabia e a maioria de python tambem.
  18. {2} [1] Que há varias formas de fazer programas diferentes como a mesma quantidade de "momorias". [2] Nenhuma. [3] Gostei do computador humano. RESP.: Talvez você quer dizer que o programa usado na palestra tinha apenas algumas instruções mas resolvia uma quantidade qualquer de problemas de mesma classe (soma de uma lista de números positivos ou nulos).
  19. {1} [1] Aprendi sobre o funcionamento do programa. [2] Entender as instruções. [3] Bom. RESP.: Reveja a apresentação e veja se consegue compreender como funcionam as instruções.
  20. {1} [1] Que se pularmos qualquer etapa da programação o programa não funciona. [2] Nenhuma duvida. [3] O computador humano é muito legal. RESP.: Sim, se no nosso programa tivéssemos pulado uma instrução, ele não calcularia a soma desejada.
  21. {1} [1] Aprendi que o computador tem um sistema que não é somente aparece na tela e sim que tem todo um processo para chegar na tela. [2] Entender o funcionamento do programa, muitos números. [3] Muito bom. RESP.: Reveja a apresentação.
  22. [1] Sobre a linguagem de computação. [2] Nos exercicios. [3] Muito boa a palestra. RESP.: Os exercícios que passei são muito simples, experimente fazê-los executar seus programas no HIPO.
  23. [1] Como funciona o computador internamente. [2] Nenhuma. [3] Achei interessante a parte dinâmica.
  24. {3} [1] Como funciona um programa de computador. [2] Não ficou dúvidas. [3] Palestra produtiva, que acrescentou no meu conhecimento.
  25. [1] De que um computador é só número e que ele é muito burro. [2] Nenhuma, ficou tudo bem claro. [3] Foi bem legal e espero que continue o projeto. RESP.: Sim, todo computador segue cegamente as instruções de um programa. Se ele não fizesse isso e improvisasse, seria imprestável!

2. 7/8/19 para palestra 82 alunos do ensino médio do Colégio Objetivo de Caieiras, Jd. Sto Antonio, Caieiras, SP, dentro do projeto Embaixadores da Matemática do IME, info: profa. Adriane Galrão Marques adriane at_arrob objetivocaieiras.com.br

  1. [1] Que o computador só funciona com números. [2] Como números exprimem formas ou letra. [3] Palestra muito boa, dinâmica e explicativa. RESP.: Como eu mostrei, no HIPO cada letra é representada por dois algarismos decimais, como por exemplo A por 01, B por 02 etc. Se é necessário usar muitas letras formando uma frase, cada posição de "memória" representa duas letras. Uma posição inicial poderia indicar quantas posições seguintes representam a frase. Se por formas você quer dizer imagens, elas são definidas pelos seus pontos, chamados de pixels (que vem do inglês picture element. Na tela, tem-se a impressão de que as imagens são contínuas, mas na verdade são sempre compostas por pontos.
  2. [1] O básico da programação e como computadores funcionam. [2] Se o alfabeto é codificado em dois digitos cada letra e 4 digitos uma sílaba, uma frase é codificada sempre em 4 dígitos? [3] Aula muito interessante, muitos alunos participaram e gostaram! Aprendi bastante.
  3. [1] Que os computadores funcionam com códigos. [2] Como que trava? [3] Aula boa, pelo motivo de ser participativa. RESP.: Em termos do HIPO, ele "travaria" se a Unidade Central de Processamento (CPU, de "Central Processing Unit" fosse decodificar uma instrução cujo código é inválido, por exemplo 00.
  4. [1] Como um computador funciona. [2] Como o computador trava? [3] Achei a aula super importante para o aprendizado de um jovem.
  5. [1] A programar um programa. [2] Como um computador se comunica. RESP.: a entrega de dados ao computador é feita pelas unidades de entrada, como um teclado, um "mouse", microfone etc. Todas essas entradas têm que ser convertidas em números. A saída de dados pode ser feita em uma tela, em uma impressora, um traçador de gráficos, um alto-falante etc.
  6. [1] A complexidade de simples programas e os meios tão simples para o programador fazer. [2] A transição e execuções realizadas pelo CPU. [3] Muito bom, parabéns!!
  7. [1] Como o PC funciona através dos números e da matemática. [2] Por que existem diversas linguagens de codificação? Por que não tornar uma linguagem programacional apenas em um único programa/processador de dados? [3] Compreendi melhor através do teatro, na prática, boa tática. RESP.: Atenção, nós vimos como o computador hipotético HIPO funciona, não o PC, que é muuuuito mais complicado, isto é, sua linguagem de máquina é muito mais complexa. Cada linguagem de programação tem algumas características diferentes. Mas hoje em dia o que mais distingue uma linguagem de outra é o chamado "ambiente de programação", que é uma coleção de funções já programadas que podem ser usadas.
    [1] Que os computadores são complexos e que eles são muito lógicos. [2] Porque esse tipo de aula não existe na escola? [3] Adorei a palestra e achei muito legal, aprendi muito na vida e nos computadores.
  8. [1] Eles mostraram a partir de um "teatro" o funcionamento do computador. [2] Para mim, os endereços confundem muito. [3] Foi uma palestra muito dinâmica, diferente e interessante. RESP.: A noção de endereço de memória é essencial, pois permite que a CPU faça acesso a alguma posição de memória, ou desvie a execução do programa pulando instruções ou voltando para trás a fim de repetir instruções já executadas antes, agora com novos dados. Quem sabe se você ler o artigo que descreve a aula você compreenderá melhor.
  9. [1] Funcionamento lógico do computador. [2] Linguagem Python. [3] Aprendi muito, foi bastante importante para o meu aprendizado. Sobre a linguagem Python, experimente fazer o curso do prof. Fábio Kon no Coursera (grátis se não precisar de certificado).
  10. [1] Como o computador lê informações. [2] Na parte de "linguagem Python". [3] A palestra é realmente muito boa, porem por não experiência não entendia quase nada, porem adorei.
  11. [1] Eu aprendi que o apontador tem que mudar de endereço, antes do CPU executar a tarefa. [2] A minha dúvida foi a linguagem Python. [3] Achei interessante e didático, informações bem importantes a serem aprendidas.
  12. [1] Que o computador trabalha apenas com número. [2] Se o computador trabalha apenas como nós o mandamos, como ele consegue voltar as casas com seus próprio sistema? [3] Achei a palestra ótima, mas a sala não colabora. Espero poder ser sua aluna na USP. RESP.: Não sei se você se refere a repetir instruções já executadas com outros dados; nesse caso, é executada uma instrução de desvio para uma posição de memória onde começam as instruções a serem repetidas. Isso dá ao computador a possibilidade de, com um certo número de instruções, resolver um número qualquer de problemas de mesma classe. No exemplo da aula, o programa calculava a soma de um número qualquer de números, que podem ser diferentes em cada execução.
  13. [1] Entender como o computador interpreta os dados e sua "linguagem". [2] Com a interpretação de dados pode resultar na conversão de energia (como tocar uma música). [3] Gostei muito da palestra. Muito informativa e detalhada. RESO.: Uma onda sonora é partida em pedacinhos de tempo; a intensidade poderia estar em uma posição de memória do hipo, e a frequência na seguinte. Compondo as frequências consegue-se fazer um alto-falante reproduzir qualquer timbre de som ou de voz.
  14. [1] Posições de memoria. [2] Nenhuma. [3] Achei legal.
  15. [1] Como um computador lê informações. [2] Nenhuma. [3] O teatro foi criativo.
  16. [1] Aprendi como tudo funciona, a linguagem Python que é recente e muito útil, aprendi códigos ex: [EE], ACC, muito interessante. [2] Nenhuma. [3] Gostei muito, ele nos diverte, todos temos que passar por essa experiência.
  17. [1] E aprendi como entender a programação dos computadores. [2] Se é muito complicado aprender programações complicadas. [3] A aula muito boa obrigado por nos ensinar. RESP.: Não é complicado, apenas é preciso desenvolver o raciocínio especial que é necessário para programar, e conhecer bem uma certa linguagem de programação e, hoje, principalmente o ambiente de programação, isto é, as funções já programadas e que podem ser reutilizadas.
  18. [1] Sobre as funções do computador. [2] Sobre o que fizemos no teatro sobre o computador de papel. [3] Gostei muito da aula, ótima interação. RESP.: Leia o artigo sobre a aula, quem sabe você vai compreender melhor.
  19. [1] Aprendi que é bem importante saber como tudo sobre o compumtador funciona. [2] Não tive duvidas. [3] Que é bem (muito) legal pra quem quer seguir essa careira.
  20. [1] Como funciona o computador. [2] Nenhuma. [3] Muito bom.
  21. [1] Como um computador funciona. [2] Não tive dúvida. [3] Gostei da palestra, foi bem educativa e intuitiva.
  22. [1] Aprendi que devemos saber como que um computador funciona. [2] Nenhuma. [3] A cada dia que passa, a tecnologia evolui; futuramente tudo será na base da tecnologia e é importante ter conhecimento de como funciona a computação.
  23. [1] Computadores são complexos e funcionam muito bem. [2] Nenhuma. [3] Adorei a palestra e te achei muito fofo, inteligente e um professor excelente.
  24. [1] A coisa mais importante que aprendi foi um maior conhecimento do funcionamento do computador, como as codificações, as linguagem as posições de memória... [2] De acordo com as explicações não tive dúvidas. [3] Foi muito interessante o modo que ele abordou o funcionamento do PC.
  25. [1] Não aprendi nada, esse ramo não e para mim. [2] Não. [3] Muito bom para quem gosta disso.
  26. [1] Noções básicas sobe programação e leitura de dados. [2] Ficaram algumas dúvidas sobre as funcionalidades do computador. [3] Professor divertido que cativa os alunos; aula muito interessante, porém seria melhor aproveitada por quem deseja prestar/trabalhar com programação. RESP.: Estude o artigo.
  27. [1] Que o computador só le por codigos. [2] Não fiquei com nenhuma. [3] Explica muito bem.
  28. [1] Entendi melhor sobre o computador, como funciona etc. [2] Não tive nem uma dúvida. [3] Achei super interessante essa aula.
  29. [1] O funcionamento do computador. [2] O funcionamento do ponteiro. [3] Poderia passar a informação mais rapido. RESP.: Nós vimos o apontador de instruções. Ele contém um endereço, e indica à unidade central de processamento onde está a próxima instrução a ser executada.
  30. [1] O funcionamento logico dos computadores. [3] Interessante o teatro faz com que a percepção seja melhor.

1. 16/5/18 para 80 alunos dos 1º, 2º e 3º anos do ensino médio, no Colégio Albert Sabin, Parque dos Principes, São Paulo, SP, (11) 3712-0713, dentro do projeto Embaixadores da Matemática do IME, info: prof. Dalson Alves de Lima Graça dlima at.arro.ba.albertsabin.com.br

  1. [3] Achei a aula interessante, a dinâmica do teatrinho fez com que eu entendesse melhor o que foi passado. Muito obrigada pela sua presença.
  2. [1] O funcionamento dos computadores e suas linguagens foram as coisas mais importantes que aprendi. [2] Como o computador "entende/interpreta" uma frase e a "transforma" em um código de dois dígitos? [3] Gostei muito da palestra e de saber como funciona um computador. Parabéns. RESP.: Atenção, no teatrinho o Computador a Papel tinha instruções em forma de texto somente por motivos didáticos, para se entender o que cada instrução devia executar. Os computadores não usam esse tipo de instrução, mas codificadas numericamente, análogamente às do HIPO.
  3. [1] Aprendi o funcionamento de linguagens e comandos como o python. [2] Por que são utilizadas a linguagem binárias nos computadores modernos? [3] Foi um prazer participar, já utilizei programas simples e intuitivos como o RPG-maker para a criação de scripts e foi ótimo saber mais sobre. RESP.: O sistema numérico binário, que emprega apenas os símbolos 0 e 1, é usado na linguagem de máquina dos computadores por uma questão de simplicidade, eficácia (isto é, diminuir a possibilidade de alteração espontânea de dados) e velocidade dos circuitos que interpretam e executam as instruções da linguagem de máquina. Qualquer sistema numérico poderia ser usado. Na palestra "Sistemas numéricos. Por que os computadores usam os sistemas binário e hexadecimal?" explico isso em detalhe.
  4. [1] Eu aprendi como os computadores antigos interpretam as informações fornecidas. [2] Como programar em Python? [3] Achei a aula produtiva. RESP.: Cuidado, computadores processam dados, e não informações. Uma informação requer um ser humano que a recebe e a compreende; se ele não compreende, pode ter recebido apenas dados, como um texto em uma língua que não conhece: pode mudar o formato dos caracteres e dos parágrafos etc. Tudo isso é processamento de dados, e não de informações. Veja meu artigo "Dado, Informação, Conhecimento e Competência" em meu site.
  5. [1] Passo a passo da interpretação de dados e processamento de um computador. [2] Felizmente, todas as dúvidas foram respondidas no momento. [3] Aula irreverente e dinâmica e, mesmo com o curto período de apresentação, provou-se adequada. Mesmo assim, acredito que seria melhor que a aula fosse mais longa para haver maior demonstração e detalhamento.
  6. [1] O que eu aprendi de mais é como funciona um computador. [2] Como funciona o código binário. [3] Aula muito boa e interativa. RESP.: O funcionamento do sistema numérico binário é objeto de outra palestra, veja a avaliação 3 acima.
  7. [1] Unidade central de processamento -> todo computador tem. Capacidade do programa é 9999. Codigos numéricos mais #### [quadradinhos]. [3] Gostei muito do professor! Didatica 10. RESP.: O computador virtual HIPO tem "palavras" (isto é, a menor representação que forma uma unidade) de 4 dígitos decimais por uma questão de simplicidade. Ela permite que o código de uma instrução tenha mais do que 10 valores diferentes e que a unidade central de armazenamento tenha 100 palavras.
  8. [1] Aprendi que com um número contado de instruções, o computador é capaz de realizar qualquer tarefa. [2] Não seria mais fácil o comando das instruções ser dado diferente do dos dados? Se sim, por que é igual? [3] Muito boa a dinâmica utilizada para representar o computador e é incrível pensar como ele trabalha. RESP.: Eu contei que a ideia do famoso matemático Von Neumann de representar dados e instruções da linguagem de máquina exatamente da mesma forma deu um enorme avanço nos computadores; eu disse que dessa maneira pode-se ter naquela unidade mais instruções de um ou vários programas e menos dados ou, ao contrário, mais dados e menos programas. É uma questão de flexibilidade e simplicidade.
  9. [1] Processamento, linguagem e propriedades na interpretação de dados em um computador. [2] Ao final da apresentação, não restaram dúvidas sobre o tema. [3] O teatro como introdução foi de excelente contribuição para a compreensão da palestra como um todo.
  10. [1] Funcionamento do processamento de dados de um computador. [2] Como o computador sabe o que é instrução e o que é dado? [3] Bom teatro de funcionamento do computador. RESP.: Em primeiro lugar, o computador não "sabe" nada, pois não tem consciência. Em segundo, o computador usa o apontador de instruções para localizar a próxima instrução a ser executada; o conteúdo de qualquer posição de memória indicada por esse apontador, quando for a hora de decodificar uma nova instrução, será interpretado pelos circuitos como uma instrução. Por outro lado, uma instrução pode fazer referência a uma posição cujo conteúdo, durante a execução dessa instrução, não será interpretado como instrução, mas como dado.
  11. [1] De mais importante aprendi que qualquer computador tem e segue sempre uma linguagem e sempre interpreta os códigos. [3] Muito boa a explicação por meio do teatro.
  12. [1] Códigos são transformados em letras, dados e comandos específicos. Foi bom entender a causa de algumas falhas no PC. [2] As codificações se repetem, mas como são interpretadas desse modo? [3] Adorei a palestra! Informações muito bem comunicadas. RESP.: Cuidado, letras e outros símbolos são codificados numericamente para manipulação pelo computador. Vimos que com algumas instruções pode-se processar um número grande de dados diferentes, por meio do desvio para o início de uma sequência de instruções cujo processamento é então repetido.
  13. [1] Aprender como os dados e informações estão "escritos" dentro da CPU. Aprender a organização e funções de cada parte. [3] Engraçado e prático, simplifica bastante e isso ajuda (envolvente).
  14. [1] A lógica por trás de programas e computadores e onde são armazenadas as informações. [2] Ficou a curiosidade sobre como são armazenadas as instruções seguidas. [3] Foi muito interessante. RESP.: Em todos os computadores de hoje, s instruções são armazenadas em um código numérico binário. O Computador a Papel e o HIPO usam um código decimal só para ilustração mais simples dos conceitos básicos de como um computador funciona do ponto de vista da linguagem de máquina.
  15. [1] O computador só interpreta números e consegue diferenciar dados pela instrução anterior. [3] A dinâmica de grupo facilitou a compreensão da parte teórica.
  16. [1] Não sabemos como funciona a memória, computador não tem memória, apenas é programado por dados. [2] Quando um computador perde tudo e ele "recomeça" a partir do armazenado no back-up, como ele reinterpreta todos os dados? RESP.: Não sabemos como funciona a memória humana, de modo que não se devia chamar de "memória" a unidade central de armazenamento de dados de uma computador. Como eu disse, na computação usam-se muitas expressões antropomórficas (da natureza humana) indevidamente. Isso pode mistificar tanto o computador como denegrir a visão que se tem do ser humano, associando-se-o a uma máquina.
  17. [1] Aprendi a linguagem "correta" para o uso de programas! E o funcionamento básico de um computador! [2] Não tenho! Muito boa! [3] Não acredito que o "teatrinho" tenha sido muito claro, devia ter sido melhor organizado e preparado! RESP.: Infelizmente o tempo que foi dado foi muito curto, a execução do teatrinho podia ter sido mais vagarosa e com mais explicações.
  18. [1] Como saber programa, o basico do básico, como programa pode ajudar. [2] Como os "hackers" trabalham para buscar a falha e explorá-la? [3] Muito boa a interação, animada, deixando facil uma coisa que aparenta ser dificil. RESP.: Os hackers conseguem ter acesso aos sistemas que controlam os computadores e os programas que são interpretados pela máquina, modificando-os. Por exemplo, se eles descobrem a senha de acesso a um computador ou a uma rede, podem eventualmente modificar os programas existentes e introduzir novos.
  19. [1] O funcionamento e a complexidade de um computador. [2] Não restaram duvidas. [3] Gostei muito do teatro.
  20. [1] Funcionamento básico de um computador. [2] Não fiquei com nenhuma dúvida, o palestrante lecionou muito bem.
  21. [1] Computadores funcionam com diversos tipos de linguagem, como números e letras, e transcrevendo as linguagens em comandos. [2] Como funciona o código binário. RESP.: Costuma-se chamar de instruções os códigos da linguagem de máquina ou de montagem (assembler) interpretados pelo computador, e de comandos as expressões em linguagens de nível mais alto, como a Python que foi ilustrada, infelizmente muito rapidamente devido ao tempo.
  22. [1] A nossa concepção de memória de um computador é errada, o certo seria posições de armazenamento, já que não sabemos como nossa memória funciona.
  23. [1] Linguagem Python, linguagem de montagem, as nomeações incorretas utilizadas. [3] Gostei da palestra.
  24. [1] Computador é burro. [2] Por que a Microsoft é tão boa com computadores? [3] Bacana. RESP.: Computador é "burro" no sentido de executar cegamente as instruções; se um computador não seguisse estritamente essas instruções, não faria o que se espera que ele faça.
  25. [1] Como funciona o computador. [3] Dinâmica do computador físico ficou confusa.
  26. [1] Aprendi o basico da linguagem de programação e como ela era feita antigamente, aprendi um pouco de Python. [2] Um supercomputador pode fazer todas estas coisas mais rapido ou de pez [?] mais. [3] Foi uma aula legal. RESP.: Um supercomputador simplesmente executa os programas mais rapidamente.
  27. [1] O computador não tem memória, computador "le" dados e informações -> é burro. Unidade central de armazenamento é em número. [2] Não ficou duvida. RESP.: Atenção, computadores não leem, o ser humano é que lê. Um computador reconhece símbolos de acordo com o programa que está sendo interpretado.
  28. [1] A importância da codificação para um computador. [2] Como funcionam os computadores mais complexos. [3] Muito boa palestra. RESP.: Por exemplo, os computadores hoje em dia não têm apenas um acumulador, como os primeiros computadores que foram construídos, mas têm vários, chamados de "registradores". Mas no Windows "registry" tem outro sentido, contém dados sobre os programas.
  29. [1] O mais importante do que aprendi hoje foi como os processos lógicos ocorrem "dentro" dos computares. [2] Como ocorre o funcionamento de redes neurais e como isso está relacionado com as aula de hoje? [3] Muito interessante! RESP.: Redes neurais artificiais são dados organizados em forma de redes, com "nós" e "arestas" que os ligam. Cada nó tem algumas entradas pela quais passam dados, que são combinados matematicamente para dar uma saída do nó também em forma de dado. Assim combinam-se os dados fornecidos a uma dessas redes, transformando dados de entrada na rede em uma saída. Fornecendo-se muitos dados de entrada na rede e os dados de saída correspondentes, pode-se calcular quais são os parâmetros que devem entrar nos cálculos em cada nó, o que é chamado indevidamente de "aprendizado de máquina" ("machine learning"; indevidamente pois não se sabe como o ser humano aprende, isso é mais uma antropomorfização indevida). Depois de ajustados os parâmetros, dão-se dados de entrada e a rede calcula os de saída, por exemplo distinguindo um cachorro de um gato. A nomenclatura "rede neural" é indevida pois não se sabe como a rede de neurônios funciona no cérebro.
  30. [1] O mais importante foi aprender como o computador é organizado.
  31. [1] Aprendi um pouco melhor como a CPU trabalha. [2] Como funciona o python, foi a maior dúvida. RESP.: Em um curso de programação, sempre se aprende uma linguagem do nível da Python. Ela foi usada como exemplo pois é moderna e muito usada hoje em dia. Há cursos de Python na Internet, por exemplo a de meu colega Fábio Kon, em
    https://www.coursera.org/learn/ciencia-computacao-python-conceitos/home/welcome
    que é grátis se não se requer um certificado.
  32. [1] Como o computador funciona e como, mesmo sendo uma máquina, tem problemas no funcionamento.
  33. [1] Aprendi o básico do funcionamento dos computadores mais antigos e como interpretavam codigos. [2] Como funcionavam os computadores antigos em geral. [3] Achei a apresentação boa.
  34. [1] Funcionamento da estrutura do computador; representação de letras. [2] Qual o resultado da programação. RESP.: O resultado da programação é um programa escrito em alguma linguagem de programação, e que pode ser introduzido em um computador e os comandos serem interpretados da maneira como o programador desejava.
  35. [1] Acredito que compreendi como um computador funciona superficialmente (já que deve ser bem complicado). [2] A maior dúvida se apresenta em como exatamente com (exemplos variados do cotidiano) esses conceitos poderiam ser aplicados. [3] Obrigada pela palestra. RESP.: Sim, os circuitos eletrônicos são bem complicados. Os conceitos são aplicados em processamento de dados em um computador. A intenção principal foi mostrar como o computador interpreta um programa em linguagem de máquina.
  36. [1] Eu achei muito interessante a maneira com que o computador procura o código e realiza um comando. [2] Como dois sinais iguais são interpretados diferentes. RESP.: Desde a primeira linguagem de nível mais alto do que a linguagem de máquina, FORTRAN, quase todas as linguagens de programação usam o = para atribuição de um dado a uma posição de memória, por exemplo A = 5 produz uma cópia do 5 (na notação interna; no HIPO seria +0005) e coloca-a na posição associada à variável A. Outras linguagens usaram a notação, muito mais clara, A := 5, como ALGOL e PASCAL. Desde a linguagem C usam-se dois sinais == para teste de igualdade, por exemplo, depois de interpretar A = 5, A == 6 dá o valor convencionado como falso, e A == 5 dá verdadeiro. É uma lástima não se ter mudado o sinal de atribuição (=) em lugar de se ter mudado o sinal para teste de igualdade (==).
  37. [1] Unidade central de processamento recebe dados da unidade de entrada, capacidade do programa é 9999. [Desenho da estrutura apresentada.] Códigos numéricos +#### [quadradinhos]. [2] Não fiquei com nenhuma dúvida. [3] Professor muito bom e explica de forma que os alunos entendam!
  38. [1] A maneira como um computador recebe as informações e o que ele é. [2] Não ficou dúvida.
  39. [1] O que aprendi de mais importante foi a linguagem que o computador lê, muito impressionante. [2] Como que se implanta essa linguagem no computador. RESP.: Se um programa for escrito em uma linguagem de montagem (assembly language, ou assembler) ele tem que ser dado a um programa chamado "montador" (ou "assembler) para que cada instrução seja convertida em uma instrução da linguagem de máquina. Já nas linguagens de nível mais alto, como a Python que foi exemplificada, um programa tem que traduzir cada comando (como Soma = 0) para a linguagem de máquina; esse programa é chamado de "compilador" (compiler). A construção de compiladores é uma área específica da Ciência da Computação; eu tenho um velho livro sobre esse assunto; ele está na íntegra em meu site.
  40. [1] Afirmar que computadores possuem "memória" é errôneo, assim como dizer que são produzidas inteligências artificiais.
  41. [1] Aprendi o método de funcionamento de um sistema simples de um computador. [2] Não houve dúvidas. [3] Uma ótima palestra.
  42. [1] O método de envio e/ou recepção de informações dentro de uma máquina, no caso, computador. [2] Não houve dúvidas. [3] Ótima palestra!
  43. [1] O que eu mais aprendi foi a lógica essêncial do funcionamento dos computadores. [2] A única dúvida restante foi como os dados são transferidos pelo computador (por exemplo, como os dados passam da central para o instrutor e vice-versa). RESP.: Os dados circulam em um computador representados eletricamente. Por exemplo, se em um circuito passa corrente pode-se associar a ele o símbolo 1, se não passa corrente, o símbolo 0.
  44. [1] Como o computador interpreta dados e instrução, a partir da entrada. [2] Como o computador interpreta código binário, e como ele exibe letras e imagens a partir de números. [3] Muito divertida e interessante. RESP.: Ver a resposta à avaliação 3 acima.
  45. [1] O funcionamento interno de um computador para executar os comandos encaminhados pelo usuário, assim como a linguagem das máquinas foi o aspecto mais importante aprendido. [2] A principal dúvida foi a prática de todos os elementos do computador, uma vez que, pessoalmente, funciona de forma abstrata pela programação.
  46. [1] Conceitos básicos do PC. [3] Gostei muito da apresentação.
  47. [1] [Desenho da estrutura de um computador]. Expressões antropomorficas -> imitação de expressões humanas em objetos inanimados -> memória, inteligência artificial. Posições de memoria -> dados. Entrada -> "organiza" as posições de memória. UCP (central de processamento) -> interpretação; -> possui uma capacidade de armazenamento. Comandos de instruções -> indica qual dado deve ser analisado. [2] Linguagem de máquina x montagem. RESP.: A linguagem de montagem (assembler) é simplesmente uma associação de códigos mnemônicos, fáceis de lembrar, às instruções da linguagem de máquina, e a possibilidade de se dar nomes (chamados de "rótulos", labels) às posições de memória, como Zero no exemplo dado, para dar esse nome ao dado de valor +0000. Com isso não é necessário lembrar dos códigos das instruções (por exemplo, 21 para soma), e nem de endereços numéricos das posições da unidade central de armazenamento.
  48. [1] Para mim, o aprendizado mais importante foi entender como a lógica do computador difere da humana. [2] Como a linguagem do computador é traduzida para linguagens cujas estrutura e lógica diferem da Ocidental? RESP.: Excelente observação, que não foi tratada explicitamente na palestra. O computador faz escolhas lógico-matemáticas, o ser humano toma decisões, inclusive qualitativas, que se introduzidas em um computador têm que ser reduzidas a escolhas lógicas, e não é a mesma coisa! Tanto faz que símbolos o computador usa. Certamente os ideogramas orientais são considerados como símbolos quantificados, como nossas letras e sinais como o +.
  49. [1] Entender que muitas nomenclaturas utilizadas, tal como "ler" e "memória", são, na verdade, incorretas. [2] Para mim, a maior dúvida foi a respeito do simulador apresentado (seu funcionamento).
  50. [1] Aprendi o princípio lógico de processamento de um computador.