Pascaline, máquina calculadora feita por Blaise Pascal
John Napier (1550-1617), escocês inventor dos logaritmos, também inventou os ossos de Napier, que eram tabelas de multiplicação gravadas em bastão, o que evitava a memorização da tabuada.
A primeira máquina de verdade foi construída por Wilhelm Schickard (1592-1635), sendo capaz de somar, subtrair, multiplicar e dividir. Essa máquina foi perdida durante a guerra dos trinta anos, sendo que recentemente foi encontrada alguma documentação sobre ela. Durante muitos anos nada se soube sobre essa máquina, por isso, atribuía-se a Blaise Pascal (1623-1662) a construção da primeira máquina calculadora, que fazia apenas somas e subtracções.
A máquina Pascal foi criada com objectivo de ajudar seu pai a computar os impostos em Rouen, França. O projecto de Pascal foi bastante aprimorado pelo matemático alemão Gottfried Wilhelm Leibniz (1646-1726), que também inventou o cálculo, o qual sonhou que, um dia no futuro, todo o raciocínio pudesse ser substituído pelo girar de uma simples alavanca.
Todas essas máquinas, porém, estavam longe de ser um computador de uso geral, pois não eram programáveis. Isto quer dizer que a entrada era feita apenas de números, mas não de instruções a respeito do que fazer com os números.
A máquina de tabular
O próximo avanço dos computadores foi feito pelo americano Herman Hollerith (1860-1929), que inventou uma máquina capaz de processar dados baseada na separação de cartões perfurados (pelos seus furos). A máquina de Hollerith foi utilizada para auxiliar no censo de 1890, reduzindo o tempo de processamento de dados de sete anos, do censo anterior, para apenas dois anos e meio. Ela foi também pioneira ao utilizar a electricidade na separação, contagem e tabulação dos cartões.
A empresa fundada por Hollerith é hoje conhecida como International Business Machines, ou IBM.
Os primeiros computadores de uso geral
Z1, computador electromecânico construído por Konrad Zuse
Foi na Segunda Guerra Mundial que realmente nasceram os computadores actuais. O Mark I ocupava 120m³ aproximadamente, conseguindo multiplicar dois números de dez dígitos em três segundos.
Simultaneamente, e em segredo, o Exército Americano desenvolvia um projecto, chefiado pelos engenheiros J. Presper Eckert e John Mauchy, cujo resultado foi o primeiro computador a válvulas, o Electrónica Numeric Integrator And Calculator (ENIAC)[2], capaz de fazer quinhentas multiplicações por segundo.
ENIAC, computador desenvolvido pelo Exército Americano
No ENIAC, o programa era feito rearranjando a fiação em um painel. Nesse ponto John Von Neumann propôs a ideia que transformou os calculadores electrónicos em “cérebros electrónicos”: modelar a arquitectura do computador segundo o sistema nervoso central. Para isso, eles teriam que ter três características:
Codificar as instruções de uma forma possível de ser armazenada na memória do computador. Von Neumann sugeriu que fossem usados uns e zeros.
Armazenar as instruções na memória, bem como toda e qualquer informação necessária.
Quando processar o programa, buscar as instruções directamente na memória, ao invés de lerem um novo cartão perfurado a cada passo.
Arquitectura de hardware
Mesmo que a tecnologia utilizada nos computadores digitais tenha mudado dramaticamente desde os primeiros computadores da década de 1940, quase todos os computadores actuais ainda utilizam a arquitectura de von Neumann proposta por John von Neumann.
Seguindo a arquitectura, os computadores possuem quatro sessões principais, a unidade lógica e aritmética, a unidade de controle, a memória e os dispositivos de entrada e saída. Essas partes são inter conectadas por barramentos. A unidade lógica e aritmética, a unidade de controle, os registradores e a parte básica de entrada e saída são conhecidos como a CPU.
Processamento
O processador (ou CPU) é uma das partes principais do hardware do computador e é responsável pelos cálculos, execução de tarefas e processamento de dados. A velocidade com que o computador executa as tarefas ou processa dados está directamente ligada à velocidade do processador. As primeiras CPUs eram constituídas de vários componentes separados, mas desde meados da década de 1970 as CPUs vêm sendo manufacturadas em um único circuito integrado, sendo então chamadas microprocessadores.
A unidade lógica e aritmética (ULA) é a unidade central do processador, que realmente executa as operações aritméticas e lógicas entre dois números. Seus parâmetros incluem, além dos números operandos, um resultado, um comando da unidade de controle, e o estado do comando após a operação. O conjunto de operações aritméticas de uma ULA pode ser limitado a adição e subtracção, mas também pode incluir multiplicação, divisão, funções trigonométricas e raízes quadradas. Algumas podem operar somente com números inteiros, enquanto outras suportam o uso de ponto flutuante para representar números reais.
A unidade de controle é a unidade do processador que armazena a posição de memória que contém a instrução corrente que o computador está executando, informando à ULA qual operação a executar, buscando a informação (da memória) que a ULA precisa para executá-la e transferindo o resultado de volta para o local apropriado da memória.
Memória
A memória é um dispositivo que permite ao computador armazenar dados por certo tempo. Actualmente o termo é geralmente usado para definir as memórias voláteis, como a RAM, mas o seu conceito primordial também aborda memórias não voláteis, como o disco rígido. Parte da memória do computador é feita no próprio processador; o resto é diluído em componentes como a memória RAM, memória cache, disco rígido e leitores de mídias removíveis, como disquete, CD e DVD.
Nos computadores modernos, cada posição da memória é configurado para armazenar grupos de oito bits (chamado de um byte). Cada byte consegue representar 256 números diferentes; de 0 a 255 ou de -128 a +127. Para armazenar números maiores pode-se usar diversos bytes consecutivos (geralmente dois, quatro ou oito). Quando números negativos são armazenados, é utilizada a notação de complemento para dois.
A memória do computador é normalmente dividida entre primária e secundária, sendo possível também falar de uma memória "terciária".
Memória primária
A memória primária é aquela acessada directamente pela Unidade Lógica e Aritmética. Tradicionalmente essa memória pode ser de leitura e escrita (RAM) ou só de leitura (ROM). Actualmente existem memórias que podem ser classificadas como preferencialmente de leitura, isso é, variações da memória ROM que podem ser regravadas, porém com um número limitado de ciclos e um tempo muito mais alto.
Normalmente a memória primária se comunica com a ULA por meio de um barramento ou canal de dados. A velocidade de acesso a memória é um factor importante de custo de um computador, por isso a memória primária é normalmente construída de forma hierárquica num projecto de computador. Parte da memória, conhecida como cache fica muito próxima à ULA, com acesso muito rápido. A maior parte da memória é acessada por meio de vias auxiliares.
Normalmente a memória é nitidamente separada da ULA em uma arquitectura de computador. Porém, os microprocessadores actuais possuem memória cache incorporada, o que aumenta em muito sua velocidade.
Memória RAM
Memória RAM de um PC
A memória RAM (Random Access Memory) é uma sequência de células numeradas, cada uma contendo uma pequena quantidade de informação. A informação pode ser uma instrução para dizer ao computador o que fazer. As células podem conter também dados que o computador precisa para realizar uma instrução. Qualquer célula pode conter instrução ou dado, assim o que nalgum momento armazenava dados pode armazenar instruções noutro momento. Em geral, o conteúdo de uma célula de memória pode ser alterado a qualquer momento, a memória RAM é um rascunho e não um bloco de pedra.
As memórias RAM são denominadas genericamente de DRAM (RAM dinâmica), pelo facto de possuírem uma característica chamada refrescamento de memória, que tem a finalidade de manter os dados armazenados enquanto o computador estiver ligado. O tamanho de cada célula, e o número de células, varia de computador para computador, e as tecnologias utilizadas para implementar a memória RAM variam bastante. Actualmente o mais comum é a implementação em circuitos integrados.
Memória ROM
Memória ROM de um PC
A memória ROM (Read-Only Memory) é uma memória que só pode ser lida e os dados não são perdidos com o desligamento do computador. A diferença entre a memória RAM e a ROM é que a RAM aceita gravação, regravação e perda de dados. Mesmo se for enviada uma informação para ser gravada na memória ROM, o procedimento não é executado (esta característica praticamente elimina a criação de vírus que afectam a ROM).
Memória secundária
A memória secundária ou memória de massa é usada para gravar grande quantidade de dados, que não são perdidos com o desligamento do computador, por um período longo de tempo. Exemplos de memória de massa incluem o disco rígido e mídias removíveis como o CD-ROM, o DVD, o disquete e o pen drive.
Normalmente a memória secundária não é acessada directamente pela ULA, mas sim por meio dos dispositivos de entrada e saída. Isso faz com que o acesso a essa memória seja muito mais lento do que o acesso a memória primária. Para isso cada dispositivo encontra-se com um buffer de escrita e leitura para melhoramento de desempenho.
Supostamente, consideramos que a memória terciária está permanentemente ligada ao computador.
Memória terciária
Fita magnética para gravação de dados
As tecnologias de memória usam materiais e processos bastante variados. Na informática, elas têm evoluído sempre em direcção de uma maior capacidade de armazenamento, maior miniaturização, maior rapidez de acesso e confiabilidade, enquanto seu custo cai constantemente.
Entretanto, a memória de um computador não se limita a sua memória individual e física, ela apresenta-se de maneira mais ampla, e sem lugar definido. Temos possibilidades de armazenar em diversos lugares na rede, podemos estar em Luanda e acessar arquivos que foram armazenados em sítios no Brasil.
É crescente a tendência para o armazenamento das informações na memória do espaço virtual, ou o chamado ciberespaço, através de discos virtuais e anexos de e-mails. Isto torna possível o acesso a informação a partir de qualquer dispositivo conectado à Internet.
Entrada e saída
Mouse
Os dispositivos de entrada e saída (E/S) são periféricos usados para a interacção homem-computador. Nos computadores pessoais modernos, dispositivos comuns de entrada incluem o mouse (ou rato), o teclado, o digitalizador e a webcam. Dispositivos comuns de saída incluem a caixa de som, o monitor e a impressora.
O que todos os dispositivos de entrada têm em comum é que eles precisam codificar (converter) a informação de algum tipo em dados que podem ser processados pelo sistema digital do computador. Dispositivos de saída por outro lado, descodificam os dados em informação que é entendida pelo usuário do computador. Neste sentido, um sistema de computadores digital é um exemplo de um sistema de processamento de dados.
Podemos ter dispositivos que funcionam tanto para entrada como para saída de dados, como o modem e o drive de disquete. Actualmente, outro dispositivo de híbrido de dados é a rede de computadores.
Blocos funcionais de um computador
Barramentos
Para interligar todos esses dispositivos existe uma placa de suporte especial, a placa-mãe, que através de barramentos, fios e soquetes conecta todos os dispositivos. A sua função inclui também a conexão de placas auxiliares que sub-controlam os periféricos de entrada e saída, como a placa de som, a placa de vídeo, placa de rede e o fax-modem.
Outros equipamentos adicionais usados em conjunto com a placa-mãe são o dissipador, um pequeno ventilador para resfriar o processador, e a fonte de energia, responsável pela alimentação de energia de todos os componentes do computador.
Arquitectura de software
A principal característica dos computadores modernos, o que o distingue de outras máquinas, é que pode ser programado. Isto significa que uma lista de instruções pode ser armazenada na memória e executa posteriormente.
Uma pessoa usando uma calculadora pode realizar operações aritméticas como somar número apertando poucos botões. Mas somar sequencialmente os números de um a mil iria requerer apertar milhares de vezes os botões, com uma alta probabilidade de erro em alguma iteração. Por outro lado, computadores podem ser programados para realizar tal tarefa com poucas instruções, e a execução e extremamente rápida.
Mas os computadores não conseguem pensar, eles somente executam as instruções que fornecemos. Um humano instruído, ao enfrentar o problema da adição explicado anteriormente, perceberia nalgum momento que pode reduzir o problema.
Programas
Programas são simplesmente grandes listas de instruções para o computador executar, tais com tabelas de dados. Muitos programas de computador contêm milhões de instruções, e muitas destas instruções são executadas repetidamente. Um computador pessoal típico, podia executar cerca de dois a três biliões de instruções por segundo. Os computadores não têm a sua extraordinária capacidade devido a um conjunto de instruções complexo. Apesar de existirem diferenças de projecto com CPU com um maior número de instruções e mais complexas, os computadores executam milhões de instruções simples combinadas, escritas por bons "programadores". Estas instruções combinadas são escritas para realizar tarefas comuns como, por exemplo, desenhar um ponto na tela. Tais instruções podem então ser utilizadas por outros programadores.
Hoje em dia, muitos computadores aparentam executar vários programas ao mesmo tempo, o que é normalmente conhecido como multitarefa. Na realidade, a CPU executa as instruções de um programa por um curto período de tempo e, em seguida, troca para um outro programa e executa algumas de suas instruções. Isto cria a ilusão de vários programas sendo executados simultaneamente.Um computador precisa sempre de no mínimo de um programa em execução por todo o tempo para operar. Tipicamente este programa é o sistema operacional, que determina quais programas vão executar, quando, e que recursos poderá utilizar. O sistema operacional também fornece uma camada de abstracção sobre o hardware.
Impactos do computador na sociedade
Segundo Pierre Lévy, o computador não é mais um centro, é sim um nó, um terminal, um componente da rede universal calculante. Em certo sentido, há apenas um único computador, mas é impossível traçar seus limites, definir seu contorno. É um computador cujo centro está em toda parte e a circunferência em lugar algum, um computador hipertextual, disperso, vivo, fervilhante, inacabado:
O computador evoluiu na sua capacidade de armazenamento de informações, que é cada vez maior, o que possibilita a todos um acesso cada vez maior a informação. Isto significa que o computador agora representa apenas um ponto de um novo espaço, o ciberespaço. Essas informações contidas em computadores de todo mundo e presentes no ciberespaço, possibilitam aos usuários um acesso a novos mundos, novas culturas, sem a locomoção física. Com todo este armazenamento de textos, imagens, dados, etc.
Houve também uma grande mudança no comportamento empresarial, com uma forte redução de custo e uma descompartimentalização das mesmas. Antes o que era obstante agora é próximo, as máquinas, componentes do ciberespaço, com seus compartimentos de saída, optimizaram o tempo e os custos.
.