terça-feira, 3 de dezembro de 2013

FUNDAMENTOS DA COMPUTAÇÃO


FUNDAMENTOS DA COMPUTAÇÃO

Alceu Bernardino Rodrigues

Professor Tutor Externo: Viviana
Centro Universitário Leonardo da Vinci – UNIASSELVI
Curso Licenciatura em Informática (LIN0159) – Prática do Modulo III
30/11/2013
 
RESUMO
Este paper apresenta uma breve contextualização bibliográfica a cerca da Computação, considerando sua trajetória a partir do desejo e da necessidade de automatizar os cálculos, juntamente com a evolução da tecnologia de fabricação do hardware, que em conjunto com as linguagens de programação, automatizaram os processos computacionais e resultaram na Tecnologia da Informação. Apontaremos as principais invenções e a criação de conceitos usados até hoje na Informática, tais como as máquinas de calcular mecânicas que alavancaram a invenção de novos sistemas numéricos como o sistema Binário, Octal e Hexadecimal. Destacaremos a importância dos Algoritmos instruções rotineiras que automatizam os processos e cálculos. Finalizando pontuaremos a evolução dos computadores tanto analógicos quanto digital, suas aplicações e variados modelos que proporcionam melhor qualidade na interação entre o ser humano e a máquina chamada computador.

Palavras chaves; Computação; Cálculos; Hardware; Informática; Algoritmo;

1 INTRODUÇAO
           
Para entender como as maquinas revolucionaram os dias de hoje, faremos uma viagem pelas gerações de computadores, sua evolução tecnológica, como as máquinas surgiram e os computadores e, quem os desenvolveu.
A ciência tecnologia propiciou o tratamento racional e automático da Informação dando origem ao que se conhece hoje como informática. É importante expor que o conceito Informação vem do latim “Informare” (dar forma) ao conjunto de dados que produz significado, ou melhor, o dado (informação) é uma célula básica da Informação, que pode ser armazenada por dispositivos, automáticos e, que se realiza por meios mecânicos ou eletrônicos o qual se denomina Máquina (GADELHA, 2013).
 Esta informação pode através do algoritmo raciocinar e através da razão resolver um dado problema proporcionando o tratamento da informação ao realizar operações sobre certa informação. Assim, este estudo propõe-se narrar os elementos e conceitos fundamentais que proporcionaram o desenvolvimento do computador mecânico e sua evolução para o computador eletrônico, e sua evolução.  Pontuaremos os diversos tipos de computadores atuais.
Este estudo iniciar-se-á ilustrando a história do computador os primeiros dispositivos de calcular mecânicos; os elementos e conceito fundamentais; Computador mecânico; Computador Eletrônico; Evolução dos Computadores; Algoritmo e Linguagens de programação.


2 ELEMENTOS E CONCEITOS FUNDAMENTAIS


O termo COMPUTAR significa fazer cálculos, contar, efetuar operações aritméticas, COMPUTADOR é a máquina que auxilia e automatiza essa tarefa, com vantagens no tempo gasto e na precisão.
Inicialmente o homem utilizou seus próprios dedos para essa tarefa, dando origem ao sistema DECIMAL e ao termo DIGITAL e DIGITO. Para auxílio deste método, eram usados gravetos, contas ou marcas na parede. A partir do momento que o homem pré-histórico trocou seus hábitos nômades por aldeias e tribos fixas, desenvolvendo a lavoura, tornou-se necessário um método para a contagem do tempo, delimitando as épocas de plantio e colheita (GADELHA, 2013, p.01).

De acordo com Gadelha (2013, p. 01) as Tábuas de argila contendo tabuadas de multiplicação foram escritas por volta de 1700 A.C e usavam o sistema sexagesimal (base 60), dando origem às nossas atuais unidades de tempo. “Para auxiliar os cálculos há cerca de 2.500 anos surgiu o ÁBACO. A variante do ábaco mais conhecida é o SOROBAN, ábaco japonês simplificado (com 5 contas por fio, agrupadas 4x1), ainda hoje utilizado. Esse sistema de contas e fios recebeu o nome de calculi pelos romanos, dando origem à palavra cálculo”.
De acordo com Dias (2006) o matemático inglês Charles Babbage é conhecido como o "Pai do Computador". Babbage projetou o chamado "Calculador Analítico", muito próximo da concepção de um computador atual. “O projeto, totalmente mecânico, era composto de uma memória, um engenho central, engrenagens e alavancas usadas para a transferência de dados da memória para o engenho central e dispositivo para entrada e saída de dados. O calculador utilizaria cartões perfurados e seria automático” (DIAS, 2006, p. 02).
Segundo Dias (2006, p.02) o matemático húngaro John Von Neumann formalizou o projeto lógico de um computador. Em sua proposta, Von Neumann sugeriu que as instruções fossem armazenadas na memória do computador. “Até então elas eram lidas de cartões perfurados e executadas, uma a uma’’. ‘’Armazená-las na memória, para então executá-las, tornaria o computador mais rápido, já que, no momento da execução, as instruções seriam obtidas com rapidez eletrônica”.


2.1 COMPUTADORES MECÂNICO


Os computadores mecânicos começaram a ser projetados em 1834, eram acionados por manivelas, realizavam cálculos através de um sistema de engrenagens, ou outro sistema mecânico qualquer. Este tipo de sistema, comum na forma de caixas registradoras era bastante utilizado naquela época. No final do século XIX surgiu o relê, um dispositivo eletromecânico, formado por um magneto móvel, que se desloca unindo dois contatos metálicos (ZANELATO, CALDAS, 2012).
O Relê foi muito usado no sistema telefônico, depois vieram os eletromecânicos, como o Z3, criado em 1941, ele podia ser programado para fazer três ou quatro adições por segundo e multiplicar dois números em quatro ou cinco segundos (ZANELATO, CALDAS, 2012 ).

2.2 COMPUTADORES ELETRÔNICOS

No final do século XIX, surgiram as primeiras válvulas. As válvulas foram usadas para criar os primeiros computadores eletrônicos, na década de 40. As válvulas tem seu funcionamento baseado no fluxo de elétrons no vácuo. As válvulas já eram bem mais rápidas que os relês, atingiam frequências de alguns Mega-hertz, o problema é que aqueciam muito, consumiam muita eletricidade e queimavam-se facilmente (MORIMOTO, 2005).
MORIMOTO (2013) expõe que construir computadores, que usavam milhares delas era difícil, e muito caro. Apesar de tudo isso, os primeiros computadores começaram a surgir durante a década de 40, naturalmente com propósitos militares. Os principais usos eram a codificação e decodificação de mensagens e cálculos de artilharia.
O Transistor substituiu a válvula, sem possuir partes móveis, consome menos energia é mais rápido.  A ideia do uso do silício para construir transistores é que adicionando certas substâncias em pequenas quantidades é possível alterar as propriedades elétricas do silício. Um transistor é composto basicamente de três filamentos, chamados de base, emissor e coletor. O emissor é o polo positivo, o coletor o polo negativo, enquanto a base é quem controla o estado do transistor, pode estar ligado ou desligado (MORIMOTO, 2013).
Outro grande salto veio quando os fabricantes deram-se conta que era possível construir vários transistores sobre o mesmo waffer de silício. Havia surgido então o circuito integrado, vários transistores dentro do mesmo encapsulamento. Assim logo surgiram os primeiros microchips.

2.3 EVOLUÇÃO DOS COMPUTADORES

Em 1890, o norte americano Hermann Hollerith (1860-1929) desenvolve o primeiro computador mecânico. A partir de 1930. O Mark I, concluído em 1944 por uma equipe liderada por Howard Aiken, é o primeiro computador eletromecânico capaz de efetuar cálculos mais complexos sem a interferência humana. Ele mede 15 m x 2,5 m e demora 11 segundos para executar um cálculo. Em 1946, surge o Eniac (Electronic Numerical Integrator and Computer), primeiro computador eletrônico e digital automático: pesa 30 toneladas, emprega cerca de 18 mil válvulas e realiza 4.500 cálculos por segundo (GADELHA, 2013).
O Eniac contém a arquitetura básica de um computador, empregada até hoje: memória principal (área de trabalho), memória auxiliar (onde são armazenados os dados), unidade central de processamento (o "cérebro" da máquina, que executa todas as informações) e dispositivos de entrada e saída de dados que atualmente permitem a ligação de periféricos como monitor, teclado, mouse, scanner, tela, impressora, entre outros (GADELHA, 2013).
O tamanho e o preço dos computadores começam a diminuir a partir da década de 50. Neste período, inicia-se a pesquisa dos circuitos integrados, os chips, responsáveis pela crescente miniaturização dos equipamentos eletrônicos. Em 1974, a Intel projeta o microprocessador, dispositivo que reúne num mesmo chip, todas as funções do processador central essa tecnologia que permite a criação do computador pessoal, ou microcomputador. O primeiro computador pessoal é o Apple I, inventado em 1976 pelos americanos Steve Jobs e Stephan Wozniak (SIMON, 2013).
Em 1981, a IBM lança o seu PC (Personal Computer), que se torna um sucesso comercial. O sistema operacional usado é o MS-DOS, desenvolvido pela empresa de softwares Microsoft. Na época, Bill Gates, o dono da Microsoft, convence a IBM e as demais companhias a adotarem o sistema operacional de sua empresa. Isso permite que um mesmo programa funcione em micros de diversos fabricantes. Posteriormente, os PCs passam a usar microprocessadores cada vez mais potentes: 286, 386SX, 386DX, 486SX, 486DX. O Pentium, que surge nos anos 90, é atualmente o processador mais avançado usado em PCs (GADELHA, 2013).
Para Gondim (2013, p. 01) “na década de 90 surgem os computadores que, além do processamento de dados, reúnem fax, modem, secretária eletrônica, scanner, acesso à Internet e drive para CD-ROM. Os CDs-ROM, sigla de compact disc read-only memory, criados no início da década, são discos a laser que armazenam até 650 megabytes, 451 vezes mais do que um disquete (1,44 megabytes)”. Além de armazenar grande quantidade de texto, o CD-ROM tem capacidade de arquivar fotos, vídeos e animações. Em 1996 é anunciado o lançamento do DVD (digital vídeo disc), que nos próximos anos vem a substituir o CD-ROM e as fitas de videocassete. O DVD é um compact disc com capacidade de 4,7 gigabytes (cerca de 7 CDs-ROM).
Segundo os fabricantes, terá a capacidade de vídeo de um filme de 135 minutos em padrão de compressão MPEG (tela cheia) e alta qualidade de áudio. Terá o mesmo diâmetro e espessura dos CDs atuais, mas será reproduzido em um driver específico, que também poderá ser ligado à televisão. Alguns CDs-ROM são interativos, ou seja, permitem que o usuário controle, à vontade, a navegação pelo seu conteúdo. Os computadores portáteis (laptops e palmtops), marcas da miniaturização da tecnologia, também se popularizam nos anos 90. A partir de sec. XXI os tablets e os smartphones começam a substituir os desktops e laptops (GADELHA, 2013).
             
2.4 ALGORÍTMO E LINGUAGEN DE PROGRAMAÇÃO

Linguagem de Programação é um método padronizado para expressar instruções para um Computador. É um conjunto de regras sintáticas e semânticas usadas para definir um programa de computador. O primeiro projeto de linguagem de programação surgiu para um computador que não existia, sendo idealizada por Ada Lovelace em 1983. O projeto do primeiro computador foi idealizado por Charles Babbage que, após gastar fortunas e um longo tempo, não conseguiu concretizar o projeto.  (GONÇALVES, 2011).
Segundo Souza, Andrade, Gonçalves e Cunha (2010, p. 04) A primeira linguagem de programação de alto nível amplamente usada foi Fortran, criada em 1954. “Em 1957 foi criada B-0, que daria origem a Flow-Matic (1958), antecessor imediato de COBOL, de 1959. Lisp e ALGOL foram criadas em 1958. As Linguagens de programação também tornam os programas menos dependentes dos computadores ou ambientes computacionais específicos (propriedade chamada de portabilidade)”. Isto acontece porque os programas escritos em linguagens de programação são traduzidos para o código de máquina do computador no qual será executado.

2.4.1 Linguagens de Baixo Nível

De acordo com Langa (2006, p. 01) são linguagens totalmente dependentes da máquina, ou seja, que o programa que se realiza com este tipo de linguagem não pode ser migrado ou utilizado em outras máquinas. Ao estar praticamente desenhado a medida do hardware, aproveitam ao máximo as características do mesmo. Dentro deste grupo se encontram:
·         A linguagem de máquina: esta linguagem ordena à máquina as operações fundamentais para seu funcionamento. Consiste na combinação de 0's e 1's para formar as ordens entendíveis pelo hardware da máquina.  Esta linguagem é muito mais rápida que as linguagens de alto nível. A desvantagem é que são bastante difíceis de manejar e usar, além de ter códigos fonte enormes onde encontrar uma falha é quase impossível.
·         A linguagem Assembler é um derivado da linguagem máquina e está formada por abreviaturas de letras e números chamados mnemotécnicos. Com o aparecimento desta linguagem se criaram os programas tradutores para poder passar os programas escritos em linguagem assembler à linguagem máquina. Como vantagem com respeito ao código máquina é que os códigos fontes eram mais curtos e os programas criados ocupavam menos memória. As desvantagens desta linguagem continuam sendo praticamente as mesmas que as da linguagem assembler, acrescentando a dificuldade de ter que aprender uma nova linguagem difícil de provar e manter.

2.4.2 Linguagens de Alto Nível

Para Langa (2006, p. 02) as linguagens de alto nível são aquelas que se encontram mais próximas à linguagem natural que à linguagem máquina. Trata-se de linguagens independentes da arquitetura do computador. Sendo assim, a princípio, um programa escrito em uma linguagem de alto nível, pode ser migrado de uma máquina a outra sem nenhum tipo de problema.
Estas linguagens permitem ao programador se esquecer completamente do funcionamento interno da máquina/s para a que está desenhando o programa. Somente necessita de um tradutor que entenda o código fonte como as características da máquina. Costumam usar tipos de dados para a programação e existem linguagens de propósito gerais (qualquer tipo de aplicação) e de propósito específicas.

2.4.3 Linguagens de Médio Nível, C.

Trata-se de um termo não aceito por todos, porém certamente vocês já devem ter escutado. Estas linguagens se encontram em um ponto médio entre as duas anteriores. Dentro destas linguagens poderia se situar em ‘‘C’’ já que pode acessar aos registros do sistema, trabalhar com endereços de memória, todas elas características de linguagens de baixo nível e ao mesmo tempo realizar operações de alto nível (LANGA, 2006).

2.4.4 Gerações das linguagens de programação

Langa (2006, p. 03) expõe que a evolução das linguagens de programação pode ser dividida em 5 etapas ou gerações.
·         Primeira geração: Linguagem máquina.
·         Segunda geração: Criaram-se as primeiras linguagens assembler.
·         Terceira geração: Criam-se as primeiras linguagens de alto nível. Ex: C, Pascal, Cobol…
·         Quarta geração: São linguagens capazes de gerar código por si só, são os chamados RAD, com o qual pode-se realizar aplicações sem ser um expert na linguagem. Aqui também se encontram as linguagens orientadas a objetos, tornando possível a reutilização de partes do código para outros programas. Ex: Visual, Natural Adabes…
·         Quinta geração: Aqui se encontram as linguagens orientadas à inteligência artificial. Estas linguagens ainda estão pouco desenvolvidas.

2.4.5 Conceitos Importantes na Linguagem de Programação

Compilador é um programa de sistema que traduz um programa descrito em uma linguagem de alto nível para um programa equivalente em código de máquina para um processador. “Em geral, um compilador não produz diretamente o código de máquina mas sim um programa em linguagem simbólica (Assembly) semanticamente equivalente ao programa em linguagem de alto nível. O programa em linguagem simbólica é então traduzido para o programa em linguagem de máquina através de montadores” (RICARTE, 2003, p. 01).
O Algoritmo é uma sequência finita de instruções bem definidas e não ambíguas, cada uma das quais pode ser executada mecanicamente num período de tempo finito e com uma quantidade de esforço finita. O conceito de algoritmo é frequentemente ilustrado pelo exemplo de uma receita, embora muitos algoritmos sejam mais complexos. Eles podem repetir passos (fazer interações) ou necessitar de decisões (tais como comparações ou lógica) até que a tarefa seja completada (AMARAL, 2010).

Um algoritmo corretamente executado não irá resolver um problema se estiver implementado incorretamente ou se não for apropriado ao problema. Um algoritmo não representa, necessariamente, um programa de computador, e sim os passos necessários para realizar uma tarefa. Sua implementação pode ser feita por um computador, por outro tipo de autômato ou mesmo por um ser humano. Diferentes algoritmos podem realizar a mesma tarefa usando um conjunto diferenciado de instruções em mais ou menos tempo, espaço ou esforço do que outros (AMARAL , 2010).
Tal diferença pode ser reflexo da complexidade computacional aplicada, que depende de estruturas de dados adequadas ao algoritmo. Por exemplo, um algoritmo para se vestir pode especificar que você vista primeiro as meias e os sapatos antes de vestir a calça enquanto outro algoritmo especifica que você deve primeiro vestir a calça e depois as meias e os sapatos. Fica claro que o primeiro algoritmo é mais difícil de executar que o segundo apesar de ambos levarem ao mesmo resultado (AMARAL , 2010).
           
3 CONSIDERAÇÕES FINAIS

Ao final deste estudo expomos que a evolução tecnológica surgiu da necessidade da automatização dos cálculos e revolucionou o mundo atual e marcou este século com grandes avanços científicos e tecnológicos. A cada dia que passa, novas descobertas alimentam a esperança de se encontrar a solução para grandes problemas que ameaçam o homem ou lhe causam sofrimentos.
Por outro lado, a de se destacar que inúmeras pesquisas são realizadas com a finalidade de melhorar as condições da vida humana ou para atender as necessidades criadas pelo próprio homem. Em todas essas situações contamos com uma fonte ilimitada de armazenamento e processamento de informações ou dado sendo um aliado inseparável e inadiável, o computador.





REFERÊNCIAS


AMARAL, Wanessa Machado do. Algoritmos e programação de computadores. Disponível em: http://www.dca.fee.unicamp.br/~wmamaral/mc102/files/aula01/aula01Intro.pdf Acesso em 16 de novembro de 2013.  

DIAS, Renato Mendes. História da computação. Disponível em: http://computacaoeinformatica.blogspot.com.br/2006_02_01_archive.html. Acesso em 15 de novembro de 2013.  

    
GADELHA, Julia. A EVOLUÇÃO DOS COMPUTADORES. Disponível em:  http://www2.ic.uff.br/~aconci/evolucao.html Acesso em 15 de novembro de 2013.

GONÇALVES, Rodrigo. Linguagem da programação. Disponível em: http://www.slideshare.net/RodrigoGonalves8/linguagem-da-programao-9144180. Acesso em 15 de novembro de 2013.

 

GONDIM , Thiago Souza. Informática e Computadores. Disponível em:      http://amigonerd.net/exatas/informatica/informatica-e-computadores Acesso em 15 de novembro de 2013.

LANGA, Sara Alvarez. Tipos de linguagens de programação. Disponível em: http://www.criarweb.com/artigos/685.php. Acesso em 16 de novembro de 2013. 

 

MORIMOTO, Carlos E.  Manual de Hardware Completo. Disponível em: http://ftp.caliu.cat/pub1/distribucions/knoppix-remaster/kurumin/e-book/Manual_de_Hardware_Completo_3ed.pdf Acesso em 15 de novembro de 2013.

MORIMOTO, Carlos E. Válvula. Disponível em: http://www.hardware.com.br/termos/valvula   Acesso em 15 de novembro de 2013.

RICARTE, Ivan L. M. Compiladores. Disponível em: http://www.dca.fee.unicamp.br/cursos/EA876/apostila/HTML/node37.html Acesso em 16 de novembro de 2013.  

 

SIMON, S. Introdução à informática. Disponível em:   http://www.simonsen.br/its/pdf/apostilas/base-tecnica/2/intr-informatica-2-ano-de-enfermagem-1-capitulo.pdf  Acesso em 15 de novembro de 2013.


SOUZA, Christian Eduardo Moreira de; ANDRADE, Flávio Bispo; GONÇALVES, Erich William Vela; CUNHA,        Darlon Oliveira. Linguagem
de Programação.
Disponível em: http://xa.yimg.com/kq/groups/24707830/1920838624/name/Linguagem+de+programa%C3%A7%C3%A3o.doc. Acesso em 16 de novembro de 2013.    

ZANELATO, Débora e CALDAS, Juliana. O primeiro computador. Disponível em:  http://www.recreio.com.br/fique-ligado/qual-foi-o-primeiro-computador-do-mundo. Acesso em 15 de novembro de 2013.






Nenhum comentário:

Postar um comentário