Upload
maycown-douglas
View
231
Download
0
Embed Size (px)
DESCRIPTION
Trabalho de ICC
Citation preview
TRABALHO 01 - INTRODUÇÃO À CIÊNCIA DACOMPUTAÇÃO
INTRODUÇÃO À CIÊNCIA DACOMPUTAÇÃO - COM06850- 2012-II
CIÊNCIA DA COMPUTAÇÃO
GRUPO 5
2012204302 – Caíque de Oliveira de Souza2012204291 - Heloiza Barros Del’Esposti
2012204278 - Maycown Douglas O. Miranda2012204279 - Melissa Silva de Souza2012204298 - Otto Freitas Quintanilha2012204286 - Paloma Marques Nobre
SUMÁRIO
1. INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO .......................................................4
1.1. PROJETAR E IMPLEMENTAR SOFTWARE......................................................4
1.2. VISLUMBRAR NOVAS APLICAÇÕES E FORMAS DE SE UTILIZARCOMPUTADORES. ......................................................................................................4
1.3. PROPOR E DESENVOLVER MANEIRAS EFICIENTES E EFETIVAS DE SETRATAR COM PROBLEMAS COMPUTACIONAIS......................................................5
2. MODELO DE TURING...............................................................................................6
3. MODELO DE VON NEUMANN .................................................................................7
4. COMPONENTES COMPUTACIONAIS .....................................................................9
4.1. HADWARE..........................................................................................................9
4.1.1. UNIDADE DE ENTRADA.................................................................................9
4.1.2. UNIDADE DE SAÍDA .......................................................................................9
4.2. UNIDADE DE MEMÓRIA ..................................................................................10
4.2.1. MEMÓRIA RAM (RANDOM ACCESS MEMORY: MEMÓRIA DE ACESSOALEATÓRIO) ...........................................................................................................10
4.2.2. MEMÓRIA ROM (READ ONLY MEMORY: MEMÓRIA SÓ DE LEITURA) ....10
4.2.3. ROM ..............................................................................................................10
4.2.4. PROM (PROGRAMMABLE ROM: ROM PROGRAMÁVEL) ..........................10
4.2.5. CAPACIDADE DE MEMÓRIA .......................................................................10
4.3. UNIDADE DE ARITIMÉTICA E LÓGICA...........................................................11
4.4. UNIDADE DE CONTROLE ...............................................................................11
4.5. UNIDADE CENTRAL DE PROCESSAMENTO (UCP)......................................11
4.6. DADOS .............................................................................................................12
4.7. ARMAZENAMENTO DE DADOS......................................................................12
4.8. TIPOS DE ARMAZENAMENTO........................................................................13
4.8.1. ARMAZENAMENTO MAGNÉTICO ...............................................................13
4.8.2. ARMAZENAMENTO ÓPTICO .......................................................................13
4.8.3. ARMAZENAMENTO EM ESTADO SÓLIDO .................................................14
4.9. SOFTWARE DE COMPUTADOR .....................................................................15
4.9.1. PROGRAMA..................................................................................................15
4.10. LINGUAGENS COMPILADAS .......................................................................16
4.10.1. Linguagens interpretadas ............................................................................16
4.10.2. Linguagens de alto nível ..............................................................................16
4.10.3. Linguagens de baixo nível ...........................................................................16
4.11. ENGENHARIA DE SOFTWARE ....................................................................17
4.12. SISTEMAS OPERACIONAIS.........................................................................17
5. HISTÓRICO.............................................................................................................19
5.1. GERAÇÃO ZERO: MÁQUINAS MECÂNICAS (ANTES DE 1930) ..................................19
5.2. A PRIMEIRA GERAÇÃO: COMPUTADORES COM VÁLVULAS (1930–1950)................21
5.3. A SEGUNDA GERAÇÃO: COMPUTADORES TRANSISTORIZADOS (1959–1965) ........23
5.4. A TERCEIRA GERAÇÃO: COMPUTADORES COM CIRCUITOS INTEGRADOS (1965–1975) ..........................................................................................................................24
5.5. A QUARTA GERAÇÃO: COMPUTADORES VLSI (1975–1985) ......................25
5.6. QUINTA GERAÇÃO (1985- ATÉ HOJE) ...................................................................27
6. QUESTÕES SOCIAIS E ÉTICAS ............................................................................28
7. REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................31
41. INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO
O domínio de atuação da Ciência da Computação é extremamente vasto
englobando desde os seus fundamentos teórico e algorítmico até os mais avançados
desenvolvimentos em robótica e automação inteligente, computação gráfica, sistemas
inteligentes, bioinformática etc. O curso de Ciência da Computação oferece ao seu
graduado uma fundamentação teórica abrangente que lhe permite participar de maneira
efetiva no desenvolvimento tecnológico da computação.
Os trabalhos desenvolvidos pelos cientistas da computação podem ser
enquadrados em três grandes categorias:
1.1. PROJETAR E IMPLEMENTAR SOFTWARE.
Esta constitui a categoria clássica dos cientistas da computação e nela os
mesmos desenvolvem o desafiante trabalho de análise e de programação, muitas
vezes supervisionando outros programadores e sempre atentos às novas abordagens e
tecnologias.
1.2. VISLUMBRAR NOVAS APLICAÇÕES E FORMAS DE SE UTILIZARCOMPUTADORES.
A rede mundial de computadores, a World Wide Web, por exemplo, constitui
uma maneira revolucionária de se utilizar computadores e foi resultado do progresso
marcante da Ciência da Computação, principalmente, nas áreas de redes de
computadores, banco de dados e interface homem máquina. Atualmente os
pesquisadores vêm trabalhando na construção de robôs inteligentes, na transformação
de banco de dados em bancos de conhecimentos, no emprego de computadores para
desvendar os segredos do nosso DNA etc. Nessa categoria o profissional de ciência da
computação deve atuar em áreas transdisciplinares envolvendo muitas vezes
conhecimentos, técnicas e tecnologias de subáreas não pertencentes à computação.
51.3. PROPOR E DESENVOLVER MANEIRAS EFICIENTES E EFETIVASDE SE TRATAR COM PROBLEMAS COMPUTACIONAIS.
Como exemplos de trabalhos que recaem sobre essa categoria, podemos
citar os melhores métodos possíveis de se armazenar grandes quantidades de
informações em um banco de dados, de se enviar dados utilizando redes de
computadores de maneira extremamente rápida e segura, de gerar e trabalhar com
imagens cada vez mais complexas etc. A bagagem teórica e a habilidade de análise e
desenvolvimento de algoritmos, adquiridos no decorrer do curso podem auxiliam muito
um cientista da computação no desenvolvimento das atividades que recaem sobre essa
categoria.
Um curso de Ciência da Computação tem a computação como fim,
diferentemente de um curso de Sistemas de Informação onde a computação é
considerada como um meio de se tratar eficientemente a informação.
62. MODELO DE TURING
Alan Mathison Turing (1912-1954) foi capaz de estabelecer o modelo de
computador universal, servindo para traçar pela primeira vez os limites da computação
e dando finalmente uma base sobre a qual o computador moderno pudesse se
desenvolver.
Chegando ao ponto inicial relativo a Alan Mathison Turing, ele foi
totalmente essencial para chegarmos às máquinas existentes hoje, criou um modelo de
máquina universal baseada em modelos formais, ou seja, mostrando que essa
máquina pode fazer qualquer cálculo matemático. O modelo da mesma tinha como
base as ações que as pessoas realizam quando estão envolvidas na computação.
Tudo se começa em 1936, o então matemático Alan Turing cria uma
máquina que trabalha com uma fita infinita, com um cabeçote de leitura e gravação,
esse cabeçote vai lendo essas células, que são divisões da fita, analisando o conteúdo
de cada célula dessas, feita a leitura, existe o processo de transição, que é determinado
por trocar o símbolo existente na célula analisada, desse modo a máquina de Turing
pode realizar qualquer cálculo se a instrução apropriada for fornecida, enfim se
levarmos em conta a máquina de Turing e os computadores atuais, eles podem vir a
realizar a mesma coisa desde que seja fornecido os dados de entrada do programa, a
descrição de como realizar o cálculo. Dessa forma o processo da máquina de Turing
serviu de base para modelos computacionais atuais.
73. MODELO DE VON NEUMANN
O Modelo de Von Neumann é caracterizado pelo conceito do computador por
programa armazenado, em que as instruções para o funcionamento da máquina eram
gravadas eletronicamente na memória da mesma. Esta ideia tinha como objetivo deixar
o computador mais rápido, visto que com as instruções armazenadas, o processo de
execução seria mais ágil, pois as instruções estariam sendo obtidas com rapidez
eletrônica, ao contrário dos primeiros computadores em que a implementação das
instruções era dada pela manipulação de uma complexa rede de periféricos.
O modelo de Von Neumann tem como padrão utilizar um número finito de
instruções. E essas instruções são gravadas como padrões binários na memória (0 e 1).
É importante ressaltar que os computadores executam uma instrução de cada vez, e
também um dado é buscado de cada vez. Portanto o processador e a memória
executam as transferências passo a passo. O ciclo normal de execução então é: buscar
a instrução, decodificá-la, executá-la e buscar novas instruções.
Além dos sinais relativos aos dados, temos sinais para controle e
sincronismo dos diversos componentes existentes. Esses sinais trafegam por vias
específicas, denominadas barramentos. Os barramentos principais são,
respectivamente, o barramento de dados e o barramento de controle. A largura de um
barramento significa o numero de bytes que o barramento pode transportar
simultaneamente. A velocidade do tráfego dos dados no barramento de dados em
última análise determina a velocidade do processador
8O Modelo de Von Neumann é formado por:
-Memória
-Unidade de Processamento(Unidade Lógica e Aritmética)
-Unidade de Controle
-Dispositivos de Entrada
-Dispositivos de Saída
94. COMPONENTES COMPUTACIONAIS
4.1. HADWARE
4.1.1. UNIDADE DE ENTRADA
A função de uma unidade de entrada é permitir que qualquer dispositivo que
possa captar dados de meio externo e transportar para uma unidade de memória.
Exemplos de componentes mais comuns de unidade de entrada:
Teclado, mouse, leitores de cartões magnéticos, sensores, scanners, placa
mãe.
4.1.2. UNIDADE DE SAÍDA
A função de uma unidade de saída é o contrario da unidade de entrada, ou
seja, qualquer dado gravado na memória que possa ser transportado para o meio
externo ao computador. Normalmente para cada tipo de unidade de entrada existe uma
unidade de saída correspondente, e algumas vezes o mesmo dispositivo faz as duas
funções.
Exemplo de componentes mais comuns de unidade de saída:
Impressoras, monitores de vídeo, caixas de som, fones.
104.2. UNIDADE DE MEMÓRIA
A função da unidade de memória é armazenar dados em processamento e
sequencias lógicas de passos para execução de processo de dados.
4.2.1. MEMÓRIA RAM (RANDOM ACCESS MEMORY: MEMÓRIA DE ACESSOALEATÓRIO)
A característica da memória RAM simplesmente é armazenar dados e os
programas. Sendo que os dados que são gravados nessa memória podem ser
facilmente apagados e regravados novamente e só permaneceram gravados com o
computador ligado. É a memória chamada de volátil.
4.2.2. MEMÓRIA ROM (READ ONLY MEMORY: MEMÓRIA SÓ DE LEITURA)
A característica de uma memória ROM, é que ela só pode ser lida, os dados
gravados nela nunca pode ser apagado e regravados. Normalmente são gravados com
programas utilitários ou dados de utilização muito frequente (trechos do sistema
operacional, tabelas de teclado, linguagens residentes, etc.). As ROM podem ser
subdivididas em dois tipos: ROM simples, e PROM.
4.2.3. ROM
Simples: as informações são nela gravadas no momento da sua fabricação e
não podem ser alteradas, nem mesmo pelo fabricante do computador.
4.2.4. PROM (PROGRAMMABLE ROM: ROM PROGRAMÁVEL)
Esta ROM é adquirida "virgem" do fabricante e pode ser gravada pelo
usuário com os dados que quiser, tendo para isto um equipamento especial. Uma vez
gravada não pode ser mais desgravada.
4.2.5. CAPACIDADE DE MEMÓRIA
A capacidade de memória (RAM) de um computador é medida pelo número
de Bytes que a mesma consegue reter. Este é um dado importante sobre um
computador, pois dá uma boa ideia de que tipo de trabalho este computador poderá
exercer mais eficientemente. Os múltiplos do Byte são o Quilobyte, o Megabyte, o
Gigabyte e o Terabyte.
114.3. UNIDADE DE ARITIMÉTICA E LÓGICA
A função de uma unidade aritmética e lógicas realizam geralmente as 4
operações aritméticas básicas (soma, subtração, multiplicação e divisão) além da
potenciação. Realizam também operações lógicas que são comparações de grandeza
(maior, menor, igual) entre dados armazenados na memória. Estes dados são levados à
Unidade Aritmética e Lógica, onde é executada a operação desejada e seu resultado
volta à memória para análise ou armazenamento. Assim como a memória, a Unidade
Aritmética e Lógica é constituída unicamente de circuitos eletrônicos.
4.4. UNIDADE DE CONTROLE
A Unidade de Controle tem como função a tarefa de acompanhar cada passo
do programa a ser executado e acionar as unidades que executarão aquele passo. Em
uma operação de soma deve acionar a Unidade de Memória para que entregue à
unidade aritmética e lógica as parcelas a somar, para que seja feita a soma e por fim
seja devolvido à unidade de memória o resultado. Em uma operação de impressão
deve acionar a unidade de memória para que entregue à impressora a informação a ser
impressa.
A unidade aritmética e lógica e a unidade de controle estão, nos
microcomputadores, construídas em um mesmo circuito integrado que recebe o nome
de Microprocessador. É a peça eletrônica mais importante dos microcomputadores que,
inclusive, derivam dela seu nome. Nos computadores tradicionais as funções
aritméticas e lógicas e as funções de controle geralmente não são concentradas em um
único circuito integrado, mas divididas por diversos "chips".
4.5. UNIDADE CENTRAL DE PROCESSAMENTO (UCP)
Normalmente as unidades de memória, aritmética e lógica e de controle
estão acondicionadas em um único móvel que pode tomar o formato de uma pequena
caixa nos microcomputadores, de um arquivo de aço nos minicomputadores ou de um
balcão nos grandes computadores. Ao conjunto destas três unidades se chama no
jargão computacional, Unidade Central de Processamento - UCP (ou CPU - "central
12processing unity"). Geralmente é o equipamento mais caro de um computador e define
o tamanho da máquina.
4.6. DADOS
Seguindo o modelo de Von Neumann um computador com maquina de
processamento de dados recebe dados de entrada para processa-los e no fim fornecer
os resultados.
4.7. ARMAZENAMENTO DE DADOS
Os sistemas de informática podem armazenar os dados tanto internos
como externamente. Internamente, as instruções ou dados podem armazenar-se por
um tempo na memória RAM e na memória ROM. Os dispositivos de armazenamento
externos, que podem residir fisicamente dentro da unidade de processamento principal
do computador, estão fora da placa de circuitos principal. Os dispositivos de
armazenamento externo existentes são os disquetes e os discos rígidos. A maioria dos
grandes sistemas de informática utiliza bancos de unidades de armazenamento em fita
magnética. A tecnologia de CD-ROM, que emprega as mesmas técnicas laser utilizadas
para criar os CDs de música, permite capacidades de armazenamento da ordem de
várias centenas de megabytes de dados.
Sobre os Dispositivos de Armazenamento, podemos destacar os mais
utilizados atualmente, tendo em atenção os principais suportes de informação:
-Unidades de Disquetes
-Unidades Zips.
-Leitores de CD-ROM – Gravadores de CD-ROM
-Leitores de DVDs – Gravadores de DVDs
134.8. TIPOS DE ARMAZENAMENTO
Mídias de armazenamento secundárias e dispositivas existem em quatro
categorias principais; magnética, óptica, e de estado sólido.
4.8.1. ARMAZENAMENTO MAGNÉTICO
Polaridades opostas se atraem, e polaridades idênticas se repelem.
Dispositivos de armazenamento magnéticos usam estes dois estados magnéticos para
registrar dados em um disco ou fita.
Quando um disco gira ou uma fita se move, sinais elétricos nas cabeças
read/write do drive mudam a polaridade de partículas magnéticas minúsculas na
superfície magnética da mídia para registrar 0s e 1s. Quando você recobra um arquivo,
o efeito é invertido. A polaridade da mídia induz uma corrente elétrica imediatamente
abaixo da cabeça de read/write na cabeça de read/write que é transmitida ao
computador na forma de 0s e 1s.
. Flexíveis (disquete ou floppy disk)
. Rígidos (Hard Disk ou HD ou Winchester)
- Capacidade de armazenamento: varia entre KB e GB
- São divididos em trilhas concêntricas, subdivididas em sectores radiais.
Os discos rígidos não são removíveis. São discos permanentes, muito mais
velozes e capazes de armazenar muito mais informações.
4.8.2. ARMAZENAMENTO ÓPTICO
Armazenamento óptico usa um laser para queimar covas pequenas e
escuras na superfície de um disco. No caso de CDs, CD-ROM, e discos de DVD, são
criadas as pits (covas) quando a superfície do disco é forçada em um molde. Um
dispositivo de playback pode ler este revezamento de manchas escuras e claras como
sendo 0s e 1s. Com os giros do disco no drive, um feixe fino de luz laser é colocado na
superfície do disco. A quantidade de luz que é refletida de volta é determinada por se o
raio lazer laçou em um pit ou um land. Pits refletem menos luz que as Lands brilhantes
14e um dispositivo chamado de fotodetector mede a quantidade de luz refletida e circuitos
convertem sua leitura em um 0 ou 1.
4.8.3. ARMAZENAMENTO EM ESTADO SÓLIDO
Uma dos mais recentes dispositivos de armazenamento é chamada memória
flash. Esta memória usa chips de estado sólido muito parecido com esses usados na
memória interna do computador, porém, os dados nestes chips permanecem
registrados até mesmo quando a força é desligada. Considerando que dispositivos de
memória flash não têm nenhuma parte móvel eles são mais rápidos que discos e fitas
operados mecanicamente.
154.9. SOFTWARE DE COMPUTADOR
4.9.1. PROGRAMA
A definição de um programa é simplesmente uma sequencia de instruções
para ser seguidas e posteriormente executadas a fim de mostrar o resultado. Seguindo
o conceito de Von Neumann, os programas são armazenados na memória do
computador, junto com os dados a ser processados. Sendo que o algoritmo são os
passos para realizar certa tarefa. Para resolver um problema no computador é
necessário que seja primeiramente encontrada uma maneira de descrever este
problema de uma forma clara e precisa. É preciso que encontremos uma sequencia de
passos que permitam que o problema possa ser resolvido de maneira automática e
repetitiva. Esta sequencia de passos é chamada de algoritmo. Um exemplo simples e
prosaico de como um problema pode ser resolvido se fornecermos uma sequencia de
passos que mostrem a solução é uma receita de bolo.
A noção de algoritmo é central para toda a computação. A criação de
algoritmos para resolver os problemas é uma das maiores dificuldades dos iniciantes
em programação em computadores. Um fator importante é pode haver mais de um
algoritmo para resolver um problema. Por exemplo, para ir de casa até o trabalho,
posso escolher diversos meios de transportes em função do preço, conforto, rapidez,
etc. A escolha será feita em função do critério que melhor se adequar as nossas
necessidades.
Uma linguagem de programação é um método padronizado para expressar
instruções para um computador, ou seja, é um conjunto de regras sintáticas e
semânticas usadas para definir um programa de computador. Uma linguagem permite
que um programador especifique precisamente sobre quais dados um computador vai
atuar, como estes dados serão armazenados ou transmitidos e quais ações devem ser
tomadas sob várias circunstâncias.
As linguagens de programação existem para facilitar a comunicação entre
programador e hardware, o programador escreve instruções em uma linguagem bem
próxima da que as pessoas usam pra se comunicar, depois um segundo programa
16traduz o que o programador escreveu para sequencias compostas por 0 e 1
(Compiladores) ou interpreta as instruções escritas pelo programador e as executa
(Interpretador).
4.10. LINGUAGENS COMPILADAS
São as linguagens que passam por um processo de tradução (compilação),
sendo transformado para um segundo código (código de maquina) compreensível ao
processador, o programa responsável por essa tradução é chamado de compilador.
4.10.1. LINGUAGENS INTERPRETADAS
São linguagens onde o código fonte da mesma é executado por um outro
programa de computador chamado interpretador, que em seguida é executado pelo
sistema operacional ou processador. Mesmo que um código em uma linguagem passe
pelo processo de compilação, a linguagem pode ser considerada interpretada, se o
programa resultante não for executado diretamente pelo sistema operacional ou
processador.
4.10.2. LINGUAGENS DE ALTO NÍVEL
São linguagens com um nível de abstração relativamente elevado, longe do
código de máquina e mais próximo à linguagem humana. Desse modo, as linguagens
de alto nível não estão diretamente relacionadas à arquitetura do computador. O
programador de uma linguagem de alto nível não precisa conhecer características do
processador, como instruções e registradores. Essas características são abstraídas na
linguagem de alto nível. EX: Pyton, C, C++, Java, PHP.
4.10.3. LINGUAGENS DE BAIXO NÍVEL
Trata-se de linguagens de programação que compreendem as
características da arquitetura do computador. Assim, utilizam-se somente instruções do
processador, para isso é necessário conhecer os registradores da máquina. Nesse
sentido, as linguagens de baixo nível estão diretamente relacionadas com a arquitetura
do computador. Um exemplo é a linguagem Assembly, que trabalha diretamente com os
registradores do processador, manipulando dados.
174.11. ENGENHARIA DE SOFTWARE
• Desenvolvimento multiversional de software multipessoal.
• Abordagem sistemática, disciplinada e quantificada ao desenvolvimento,
operação e manutenção de software.
• Disciplina do conhecimento humano que tem por objetivo definir e exercitar
processos (humanos atuando como máquinas), métodos (planos de processos),
ferramentas e ambientes (máquinas apoiando processos e métodos) para construção
de software que satisfaça necessidades de cliente e usuário dentro de prazos e custos
previsíveis.
4.12. SISTEMAS OPERACIONAIS
Um sistema operacional é uma coleção de programas para gerenciar as
funções do processador, o input, o output, o armazenamento e o controle dos
dispositivos. O sistema operacional tem todos os comandos básicos que os aplicativos
vão usar em vez de ter todas estas funções reescritas para cada aplicativo.
Exemplo: para imprimir um arquivo, os processadores de texto mandam o
arquivo para o programa "imprimir" do sistema operacional.
Componentes funcionais dos sistemas operacionais:
Um sistema operacional executa muitas funções para que o computador
funcione bem e eficientemente. Algumas das mais importantes são:
Interpretador de Comandos: traduz comandos para instruções que o
processador entende.
Gerente dos Usuários: guarda as tarefas de um usuário separadas daquelas
dos outros.
Gerente das Tarefas: guarda as operações de uma tarefa separadas
daquelas dos outros.
18Gerente dos Recursos: gerencia o uso de recursos de hardware entre
usuários e tarefas usando-os a qualquer ponto do tempo.
Gerente de Arquivos: cria, deleta, enter, muda arquivos e gerencia acesso
para arquivos.
User Interface: gerencia acesso do usuário para o interpretador de comandos
e o gerente de arquivos.
Exemplos de sistema operacionais: Linux, Windows, Mac.
195. HISTÓRICO
5.1. GERAÇÃO ZERO: MÁQUINAS MECÂNICAS (ANTES DE 1930)
Wilhelm Schickard (1592–1635) foi reconhecido como o inventor da primeira
calculadora mecânica, o Relógio Calculadora (data exata desconhecida). Este
dispositivo podia adicionar e subtrair números contendo até seis dígitos. Em 1642,
Blaise Pascal (1623–1662) desenvolveu uma calculadora mecânica, denominada
Pascaline, para ajudar seu pai no seu trabalho com impostos. A Pascaline podia fazer
adição com transporte (vai-um) e subtração. Ela foi provavelmente o primeiro
dispositivo mecânico de soma realmente usado para objetivos práticos. De fato, a
Pascaline foi tão bem-concebida que o seu projeto básico ainda estava sendo usado no
início do século XX, como evidenciado pelo Lightning Portable Adder, em 1908, e pelo
Addometer, em 1920.
Gottfried Wilhelm von Leibniz (1646–1716), um notável matemático, inventou
uma calculadora conhecida como Stepped Reckoner, que podia adicionar, subtrair,
multiplicar e dividir. Nenhum destes dispositivos podia ser programado ou tinha
memória. Eles precisavam de intervenção manual em cada passo de seus cálculos.
Novos projetos de calculadoras começaram a emergir no século XIX. Um dos
mais ambiciosos dentre estes novos projetos era a Máquina Diferencial (Difference
Engine) de Charles Babbage (1791–1871). Algumas pessoas se referem a Babbage
como “o pai da computação”. De acordo com a opinião geral, ele foi um gênio
excêntrico que nos legou, entre outras coisas, a chave mestra e o “pegador de boi,” um
dispositivo para empurrar bois e outros obstáculos móveis para fora do caminho das
locomotivas.
Babbage construiu sua Máquina Diferencial em 1822. A Máquina Diferencial
recebeu este nome porque usava uma técnica de cálculo chamada de método das
diferenças. A máquina foi projetada para mecanizar o cálculo de funções polinomiais e
era, na verdade, uma calculadora, e não, um computador. Babbage também projetou
uma máquina de propósito geral em 1833, denominada Máquina Analítica. Embora
Babbage tenha falecido antes de tê-la construído, a Máquina Analítica foi projetada
20para ser mais versátil do que sua antecessora, a Máquina Diferencial. A Máquina
Analítica teria sido capaz de realizar qualquer operação matemática. Ela incluía muitos
dos componentes associados aos computadores modernos: uma unidade aritmética
para realizar cálculos (Babbage se referia a ela como o moinho), uma memória (o
depósito) e dispositivos de entrada e saída. Babbage também incluiu uma operação de
desvio condicional onde a próxima instrução a ser executada era determinada pelo
resultado da operação anterior. Ada, Condessa de Lovelace e filha do poeta Lord
Byron, sugeriu que Babbage escrevesse um plano de como a máquina deveria calcular
os números. Isto é reconhecido como sendo o primeiro programa de computador, e Ada
é considerada como sendo a primeira programadora de computadores. Também
existem rumores de que ele teria sugerido o uso do sistema binário de numeração, em
vez do sistema decimal, para armazenar dados.
Em 1801, Jacquard inventou um tear de tecelagem programável que poderia
produzir padrões complexos em roupas. Jacquard deu a Babbage uma tapeçaria que
havia sido tecida neste tear usando mais de 10.000 cartões perfurados. Para Babbage,
pareceu natural que, se um tear podia ser controlado por cartões, então sua Máquina
Analítica também poderia ser. Ada expressou seu encanto com esta ideia, escrevendo
que “A Máquina Analítica tece padrões algébricos da mesma forma que o tear de
Jacquard tece flores e folhas”.
O cartão perfurado provou ser o meio mais resistente de fornecer entrada
para um sistema de computação. A entrada de dados via teclado teve de esperar até
que fossem feitas mudanças fundamentais na forma como as máquinas de calcular
eram construídas. Na segunda metade do século XIX a maioria das máquinas usava
mecanismos com engrenagens, difíceis de integrar com os primitivos teclados porque
eles eram mecanismos com alavancas. Mas mecanismos com alavancas poderiam
facilmente perfurar cartões, e mecanismos com engrenagens poderiam lê-los
facilmente. Portanto, vários dispositivos foram inventados para codificar e, depois,
“tabular” dados perfurados em cartões. A mais importante das máquinas de tabulação
do final do século XIX foi a inventada por Herman Hollerith (1860–1929). A máquina de
Hollerith foi usada para codificar e compilar os dados do censo de 1890. Este censo foi
21completado em tempo recorde, impulsionando as finanças de Hollerith e a reputação de
sua invenção. Hollerith, mais tarde, fundou uma empresa que se tornaria a IBM. Seu
cartão perfurado de 80 colunas, o cartão Hollerith, foi uma marca de processamento
automatizado de dados por mais de 50 anos.
5.2. A PRIMEIRA GERAÇÃO: COMPUTADORES COM VÁLVULAS (1930–1950)
Na década de 1930, Konrad Zuse (1910–1995) partiu do ponto em que
Babbage havia parado e adicionou tecnologia elétrica e outras melhorias ao projeto de
Babbage. O computador de Zuse, o Z1, usava relés eletromecânicos em vez das
engrenagens movidas a manivela de Babbage. O Z1 era programável e possuía uma
memória, uma unidade aritmética e uma unidade de controle. Visto que verbas e
recursos eram escassos na Alemanha durante a guerra, Zuse usava filmes de cinema
descartados em vez de cartões perfurados para a entrada. Embora esta máquina tenha
sido projetada para usar válvulas, Zuse, que estava construindo ele mesmo a sua
máquina, não podia arcar com os custos das válvulas.
Assim, o Z1 corretamente pertence à primeira geração, embora não tivesse
válvulas. Zuse construiu o Z1 na sala da casa de seus pais, em Berlim, enquanto a
Alemanha estava em guerra com a maior parte da Europa. Felizmente ele não
conseguiu convencer os nazistas a comprar a sua máquina. Eles não perceberam a
vantagem tática que tal dispositivo poderia dar a eles. Bombas aliadas destruíram todos
os três primeiros sistemas de Zuse, O Z1, o Z2 e o Z3. As impressionantes máquinas
de Zuse não puderam ser refinadas até o final da guerra e foram mais um “beco de
evolução” na história dos computadores.
Três pessoas claramente emergem como inventoras dos modernos
computadores: John Atanasoff, John Mauchly e J. Presper Eckert. John Atanasoff
(1904–1995) recebeu o mérito da construção do primeiro computador totalmente
eletrônico. O Atanasoff Berry Computer (ABC) era uma máquina binária construída com
válvulas. Visto que este sistema foi construído especificamente para resolver sistemas
de equações lineares, não podemos considerá-lo um computador de uso geral.
22John Mauchly (1907–1980) e J. Presper Eckert (1929–1995) foram os dois
principais inventores do ENIAC, apresentado ao público em 1946. O ENIAC é
reconhecido como sendo o primeiro computador digital de uso geral totalmente
eletrônico.
Esta máquina usava 17.468 válvulas, ocupava 1800 metros quadrados de
chão, pesava 30 toneladas e consumia 174 kilowatts de energia. O ENIAC tinha uma
capacidade de memória de cerca de 1000 bits de informação (cerca de 20 números de
10 dígitos decimais) e usava cartões perfurados para armazenar dados.
A visão de John Mauchly de uma máquina de calcular eletrônica nasceu de
seu interesse ao longo da vida de fazer previsão do tempo matematicamente. Mauchly
fez-se voluntário para um curso rápido em engenharia elétrica na Escola de Engenharia
Moore, da Universidade da Pensilvânia. Depois de completar este programa, Mauchly
tornou-se professor na Escola Moore, onde ensinou um jovem e brilhante aluno, J.
Presper Eckert. Mauchly e Eckert encontraram um interesse mútuo na construção de
um dispositivo eletrônico de cálculo. A fim de assegurar as verbas necessárias para
construir sua máquina, eles escreveram uma proposta formal a ser revisada pela
escola. Eles retrataram a sua máquina de forma tão conservadora quanto possível, a
enquadrando como uma “calculadora automática”.
Embora provavelmente soubessem que computadores poderiam funcionar
mais eficientemente usando o sistema binário de numeração, Mauchly e Eckert
projetaram seu sistema para usar números na base 10, mantendo a aparência de uma
enorme máquina de somar eletrônica. A universidade rejeitou a proposta de Mauchly e
Eckert. Felizmente, o Exército dos Estados Unidos estava mais interessado.
Durante a Segunda Guerra Mundial, o exército tinha uma insaciável
necessidade de calcular trajetórias dos novos equipamentos balísticos. Milhares de
“computadores” humanos foram empregados diuturnamente para trabalhar na
aritmética requerida por estas tabelas balísticas. Compreendendo que um dispositivo
eletrônico poderia encurtar o cálculo de tabelas balísticas de dias para minutos, o
exército liberou fundos para o ENIAC. E o ENIAC realmente reduziu o tempo de cálculo
23de uma tabela, de 20 horas para 30 segundos. Infelizmente, a máquina não ficou pronta
antes do final da guerra. Mas o ENIAC mostrou que computadores com válvulas eram
rápidos e viáveis. Durante a próxima década, sistemas a válvula continuaram a
melhorar e foram comercialmente bem-sucedidos.
5.3. A SEGUNDA GERAÇÃO: COMPUTADORES TRANSISTORIZADOS (1959–1965)
A tecnologia de válvulas da primeira geração não era muito confiável. De
fato, alguns críticos do ENIAC acreditavam que o sistema nunca iria funcionar porque
as válvulas queimariam mais rápido do que poderiam ser substituídas. Embora a
confiabilidade do sistema não fosse tão ruim quanto os pessimistas previam, os
sistemas a válvulas frequentemente passavam mais tempo sem funcionar do que
funcionando.
Em 1948, três pesquisadores do Bell Laboratories – John Bardeen, Walter
Brattain e William Shockley – inventaram o transistor. Esta nova tecnologia não apenas
revolucionou dispositivos como televisões e rádios, mas também impulsionou a
indústria de computadores para uma nova geração. Visto que transistores consomem
menos energia do que válvulas, são menores e trabalham com mais confiabilidade, os
circuitos de computadores consequentemente se tornaram menores e mais confiáveis.
Apesar do uso de transistores, os computadores desta geração ainda eram
grandes e bastante caros. Em geral, somente universidades, governos e grandes
empresas poderiam justificar tais custos. Todavia, muitos fabricantes de computadores
emergiram nesta geração; IBM, Digital Equipment Corporation (DEC) e Univac (agora
Unisys) dominaram a indústria. A IBM comercializou o 7094 para aplicações científicas
e o 1401 para aplicações comerciais. A DEC estava ocupada fabricando o PDP-1. Uma
empresa fundada (mas logo vendida) por Mauchly e Eckert construiu os sistemas
Univac. O mais bem-sucedido sistema Unisys desta geração pertencia à série 1100.
Outra empresa, a Control Data Corporation (CDC), sob a supervisão de
Seymour Cray, construiu o CDC 6600, o primeiro supercomputador do mundo.
24O CDC 6600, de 10 milhões de dólares, podia executar 10 milhões de
instruções por segundo, usava palavras de 60 bits e tinha uma assombrosa memória
principal de 128 k palavras.
5.4. A TERCEIRA GERAÇÃO: COMPUTADORES COM CIRCUITOS INTEGRADOS(1965–1975)
A verdadeira explosão no uso de computadores veio com a geração de
circuitos integrados. Jack Kilby inventou o circuito integrado (CI), ou microchip, feito
com germânio. Seis meses depois, Robert Noyce (que também havia trabalhado em
projeto de circuitos integrados) criou um dispositivo similar usando silício em vez de
germânio. Este é o chip de silício sobre o qual foi construída a indústria de
computadores.
Os CIs pioneiros permitiam que dezenas de transistores existissem em um
único chip de silício que era menor do que um transistor simples em “componente
discreto”. Os computadores se tornaram mais rápidos, menores e mais baratos,
trazendo imensos ganhos ao poder de processamento. A família de computadores IBM
System/360 estava entre os primeiros sistemas disponíveis comercialmente que foram
construídos inteiramente com componentes de estado sólido. A linha 360 de produtos
também foi a primeira da IBM a oferecer compatibilidade entre todas as máquinas da
família, significando que todas usavam a mesma linguagem simbólica. Usuários de
máquinas pequenas podiam migrar para sistemas maiores sem reescrever todo o seu
software. Este foi um novo e revolucionário conceito na época.
A geração CI também viu a introdução de tempo compartilhado e
multiprogramação (a habilidade de mais de uma pessoa usar o computador ao mesmo
tempo). A multiprogramação, por sua vez, necessitou a introdução de novos sistemas
operacionais para esses computadores. Minicomputadores de tempo compartilhado tais
como o PDP-8 e o PDP-11 da DEC, tornaram a computação mais acessível a pequenas
empresas e universidades. A tecnologia de CI também permitiu o desenvolvimento de
supercomputadores mais poderosos. Seymour Cray usou o que havia aprendido
durante a construção do CDC 6600 e iniciou a sua própria empresa, a Cray Research
Corporation. Esta empresa produziu vários supercomputadores, iniciando com o Cray-1,
25de 8 milhões de dólares, em 1976. O Cray-1, em forte contraste com o CDC 6600,
podia executar mais de 160 milhões de instruções por segundo e suportava 8
megabytes de memória.
5.5. A QUARTA GERAÇÃO: COMPUTADORES VLSI (1975–1985)
Agora existem diversos níveis de integração: SSI (small scale integration –
integração em pequena escala), na qual existem de 10 a 100 componentes por chip;
MSI (medium scale integration – integração em média escala), na qual existem de 100 a
1.000 componentes por chip; LSI (large scale integration – integração em larga escala),
na qual existem de 1.000 a 10.000 componentes por chip; e, finalmente, VLSI (very
large scale integration – integração em muito larga escala), na qual existem mais de
10.000 componentes por chip. Este último nível, VLSI, marca o início da quarta geração
de computadores.
Para dar alguma perspectiva a estes números, considere o ENIAC como um
projeto em um chip. Em 1997, para comemorar o quinquagésimo aniversário de sua
primeira demonstração em público, um grupo de estudantes da Universidade da
Pensilvânia construiu um único chip equivalente ao ENIAC. A fera de 1.800 pés
quadrados e 30 toneladas, que devorava 174 kilowatts de potência, no minuto em que
ela era ligada, foi reproduzida em um chip do tamanho de uma unha de um polegar.
Este chip continha aproximadamente 174.569 transistores – uma ordem de magnitude a
menos do que o número de componentes normalmente colocados na mesma
quantidade de silício no final de década de 1990.
A VLSI permitiu à Intel, em 1971, criar o primeiro microprocessador do
mundo, o 4004, que era plenamente funcional, com um sistema de 4 bits que
funcionava a 108KHz. A Intel também introduziu o chip de memória de acesso
randômico (RAM), que podia armazenar quatro kilobits de memória em um único chip.
Isto permitiu aos computadores de quarta geração se tornarem menores e mais rápidos
do que seus antecessores de estado sólido.
O microcomputador pioneiro foi o Altair 8800, apresentado em 1975 pela
empresa Microprocessor Instrumentation and Telemetry (MITS). O Altair 8800 foi
26seguido pelo Apple I e Apple II e pelos PET e Vic 20 da Commodore. Finalmente, em
1981 a IBM introduziu seu PC (personal computer – computador pessoal).
O Computador Pessoal foi a terceira tentativa da IBM de introduzir um
sistema de computação “inicial”. Apesar destas falhas iniciais, John Opel, da IBM,
convenceu sua gerência a tentar novamente. Opel escolheu Don Estridge, um
engenheiro capaz e cheio de energia, para liderar o desenvolvimento do novo sistema,
de codinome Acorn.
Opel pôde iniciar o seu projeto somente após prometer terminá-lo em um
ano, o que parecia ser uma façanha impossível. Estridge sabia que a única maneira
possível de entregar o PC dentro do prazo terrivelmente otimista de um ano seria
romper as regras da IBM e usar tantas partes “terceirizadas” quanto possível. Assim,
desde o princípio, o IBM PC foi concebido com uma arquitetura “aberta”. Embora
algumas pessoas na IBM tenham lamentado a decisão de manter a arquitetura do PC
como não proprietária tanto quanto possível, foi esta abertura que permitiu à IBM
estabelecer os padrões para a indústria.
Enquanto os competidores da IBM estavam ocupados processando
companhias por copiar seus projetos de sistemas, os clones de PCs proliferaram. Em
breve o preço dos microcomputadores “compatíveis com IBM” se tornaram ao alcance
de quase todas as empresas pequenas. Também graças aos fabricantes de clones, em
seguida um grande número desses sistemas verdadeiramente de “uso pessoal”
começou a ser usado nas casas das pessoas.
A IBM mais tarde perdeu o seu domínio do mercado de microcomputadores,
mas o gênio havia saído da garrafa. Para o bem ou para o mal, a arquitetura da IBM
continua sendo de fato o padrão para a microcomputação, que cada ano anuncia
sistemas maiores e mais rápidos. Hoje em dia, o computador de mesa médio possui um
poder de computação muitas vezes maior que o dos mainframes da década de 1960.
O poder computacional trazido pela VLSI aos supercomputadores desafia a
compreensão. O primeiro supercomputador, o CDC 6600, podia executar 10 milhões de
instruções por segundo e tinha 128 kilobytes de memória principal. Em contraste,
27supercomputadores atuais contém milhares de processadores, podem endereçar
terabytes de memória e logo poderão executar um quatrilhão de instruções por
segundo.
5.6. QUINTA GERAÇÃO (1985- ATÉ HOJE)
Uma das característica dessa geração é a simplificação e miniaturização do
computador, além de melhor desempenho e maior capacidade de armazenamento,
aliados a preços cada vez mais acessíveis devido, entre outras coisas, à globalização
da economia. Assim, a tecnologia CIVLSI vem sendo substituída pela ULSI (Ultra Large
Scale Integration). Por outro lado, o conceito de processamento está derivando dos
processadores paralelos, com a execução de muitas operações simultâneas. Essa
tecnologia é para permitir a aplicação desses computadores em sistemas que
controlam aeronaves, embarcações, automóveis e sistemas de processamento crítico.
O exemplo mais marcante dessa geração de processadores é o Pentium, lançado pela
Intel em 1993.
Com mudanças sobretudo nos tipos de memória (DIMM, DDR), o
aparecimento das chamadas placas aceleradoras de vídeo AGP e o aprimoramento da
slot PCI melhorou ainda mais o desempenho das máquinas. O Pentium 4 da Intel e o
Athon XP da AMD (Advance Micro Devices) são, atualmente, os mais potentes do
mercado; entretanto, as políticas de aumento de desempenho desses processadores
esbarram na dificuldade de manter o chip numa temperatura adequada, pois à medida
que aumenta a velocidade de processamento, a temperatura interna cresce
assustadoramente.
286. QUESTÕES SOCIAIS E ÉTICAS
A ciência da computação surge como disciplina científica e acadêmica
apenas na segunda metade do século XX. Nos Estados Unidos da América e em
países europeus está ligado à necessidade de prover qualificação especializada em
processamento de dados para as pessoas que deveriam lidar com um novo artefato
tecnológico: os computadores. Desde a Revolução industrial, a computação é
provavelmente a mais significativa tecnologia atual, ela se encontra presente em nosso
cotidiano tornando-se a ferramenta fundamental do nosso século.
Nos tempos atuais os computadores estão cada vez mais presentes em
diversos setores da atividade humana desde a pesquisa científica de ponta, em
praticamente todas as áreas do conhecimento, até a mais corriqueira das ações
cotidianas. Tornando-nos assim dependentes dessa nova tecnologia. Assim sendo, a
modernidade nos trouxe muitos avanços e facilidades, mas como toda ferramenta o
computador pode ser usado construtivamente ou destrutivamente. As dependências
mais comuns são dependências de substâncias e não de comportamentos, assim é
mais fácil encontrar alguém viciado em cocaína do que viciado em trabalho ou
computador.
Alguns pesquisadores só consideram a dependência química e não a
psicológica, dificultando reconhecer que é possível sim se viciar em algo tão corriqueiro
como trabalho, jogos ou uso de computador. É importante percebermos o computador
como uma ferramenta e o problema não está com ele e sim com o uso abusivo que
podemos fazer dele.
Com essa “conectividade” temos por origem dois grupos, os que possuem
acesso a toda essa nova tecnologia e os que ainda estão privados dela, dando inicio a
divisão social ou também dita como exclusão digital. Esta situação surge como
consequência da exclusão econômica, na medida em que as pessoas com baixos
rendimentos têm maiores dificuldades em adquirir os equipamentos e os serviços de
acesso bem como pagar a educação e a formação, o que limita seriamente o seu
acesso aos benefícios da sociedade da informação.
29Assim é essencial que a sociedade compreenda a importância da inclusão
digital, pois a cada dia que se passa, cria-se uma defasagem cada vez maior entre os
que têm e os que não têm pleno acesso à sociedade da informação, entre os que se
beneficiam da tecnologia digital e os que não têm acesso aos seus benefícios, entre os
que participam plenamente da sociedade da informação e os que ficam de fora.
Verificamos assim que existe uma enorme discrepância, um fosso na
realidade, entre as economias desenvolvidas e as economias de transição, fosso esse
que se alarga ainda mais quando consideramos as economias em desenvolvimento e
as economias menos desenvolvidas.
Se não formos capazes de combater eficazmente a falta da inclusão digital,
contribuiremos, por essa via, não somente para incrementar a discriminação
económica, mas também social e política. Para isso é fundamental criar condições
objetivas de estímulo a adoção de intervenções que permitam uma utilização maior das
tecnologias de informação e comunicação, tanto ao nível dos equipamentos como da
formação das pessoas, de forma a que possamos tirar benefícios reais da utilização
dessas mesmas tecnologias.
“Uma em cada 4 pessoas que usam a internet no mundo tem uma conta no
Facebook”. Esse meio bilhão de pessoas publica 14 milhões de fotos
diariamente. Os 100 milhões de usuários do Twitter postam 2 bilhões de
mensagens por mês. Dê um Google no nome de alguém e os tweets dele vão
estar lá. Pesquisadores cunham termos bonitos como a "era da
hipertransparência" para tentar falar que há xeretas e exibicionistas demais
hoje. Um dos maiores problemas é que a internet não "esquece" nada. E agora,
que ela faz parte da vida de praticamente todo mundo há uma década, qualquer
coisa do passado pode causar um problema no presente. Fotos ousadas num
fotoblog de anos atrás vão complicar você na disputa por um emprego. Uma
troca infeliz de scraps no Orkut, como uma discussão com um ex, podem estar
ao alcance de qualquer um. As redes sociais baseadas em GPS, como a
Fousquare, colocam mais pimenta nesse molho, já que elas mostram num
mapa onde os usuários estão a cada momento. Em suma, nunca existiram
tantas possibilidades de exposição pública. E sim: sempre vai ter alguém que
você não esperava bisbilhotando você. ‘’ (Revista SUPER INTERESSNATE)
30Podemos assim dizer, que a partir da internet temos acesso ao mundo, mas
o mundo também tem acesso livre a nossa vida, com isso perdemos o nosso limite
entre o publico e o privado, pois apenas com “um Google” (pesquisa no Google) temos
o histórico da vida de qualquer um.
Esse acesso livre a informações tem-se inicio novos crimes, denominados
crimes virtuais como o cyberbullying, cavalos de troia, "banker", entre outros.
“A internet deixou de ser uma cidade tranquila, em que era possível passear
sem medo desde que você evitasse determinados becos e ruas desconhecidas.
Hoje os cibercriminosos conseguem inserir códigos maliciosos em páginas tão
insuspeitas quanto os sites da ONU ou do governo britânico. Dados da
americana White Hat Security, especialista em segurança digital, apontam que
mais de 79% dos sites contaminados com malware eram "páginas legítimas"
que haviam sido invadidas por hackers, ou seja, portais de universidades ou
blogs, por exemplo.” (Revista Galileu).
Com o fim da limitação a partir do acesso a internet, temos uma maior
facilidade de distribuição de mídias digitais, a violação do copyright esta cada vez mais
normal hoje em dia, visto que uma pessoa acha mais prático “baixar” uma musica do
que pagar por ela por exemplo. Por outro lado com o fim dessas barreiras temos um
amplo a acesso a informações as quais antes eram restritas a pequeno circulo (poucas
pessoas em locais exclusivos).
317. REFERÊNCIAS BIBLIOGRÁFICAS[1] FOROUZAN, Behrouz; MOSHARRAF, Firouz. Fundamentos da Ciência da
Computação, tradução da 2ª edição internacional.
[2] FONSECA FILHO, CLÉUZIO. História da computação : O Caminho do Pensamento
e da Tecnologia / Cléuzio Fonseca Filho. – Porto Alegre : EDIPUCRS, 200.
[3] COSTA, ABEL. Introdução ao processamento de dados.
[4]http://s3.amazonaws.com/ppt-download/ac2-modelodevonneumann-120316102215-
phpapp02.pdf?response-content-
disposition=attachment&Signature=LTQhTKobFXoY1SPw2foMU8nWwhY%3D&Expires
=1355861034&AWSAccessKeyId=AKIAIW74DRRRQSO4NIKA
[5] http://macnet.home.sapo.pt/apontamentosSC.pdf
[6] http://wwwp.coc.ufrj.br/~fernando/downloads/COMPUTACAO1.pdf
[7] http://equipe.nce.ufrj.br/gabriel/orgcomp2/OrgComp.pdf
[8] http://www.inf.ufsc.br/~barreto/cca/arquitet/arq2.htm
[9] http://infocp.wordpress.com/armazenamento/
[10] http://equipe.nce.ufrj.br/adriano/algoritmos/apostila/algoritmos.htm
[11] http://www.digitaldev.com.br/linguagens/
[12]http://dan-scientia.blogspot.com.br/2010/07/o-que-sao-dispositivos-de-
armazenamento.html
[13] http://www.coladaweb.com/informatica/sistema-operacional
[14] http://www.ebah.com.br/content/ABAAABgaoAB/engenharia-software-03
[15] ANTONIO POZZA, OSVALDO; PENEDO, SÉRGIO. A máquina de Turing.
32[16]http://www2.icmc.usp.br/~jporto/jpalbuquerque2007_aspectos_sociotecnicos_comp.
[17] http://super.abril.com.br/tecnologia/fim-fim-privacidade-580993.shtml
[18] http://www.fixedpoint.org/sarah/seweb.pdf
[19] http://www.tecmundo.com.br/gmail/2224-vicio-e-dependencia-de-computador-e-
internet.htm
[20]http://revistagalileu.globo.com/Revista/Common/0,,EMI110316-17778,00-
CRIMES+VIRTUAIS.html
[21] http://www.ebah.com.br/content/ABAAAAsEwAH/historia-computacao#
[22] Editora Cengage Learning, 2012. LEITE, MARIO. Técnicas de Programação -
Uma Abordagem Moderna/ Mário Leite.- Rio de Janeiro: Brasport, 2006.