You are on page 1of 49

FACULDADE EDUCACIONAL ARAUCÁRIA FELIPHE RAMOS DOS SANTOS VANDO AUGUSTO DINIZ

HISTÓRIA DA COMPUTAÇÃO

CURITIBA 2013

FACULDADE EDUCACIONAL ARAUCÁRIA FELIPHE RAMOS DOS SANTOS VANDO AUGUSTO DINIZ

HISTÓRIA DA COMPUTAÇÃO

Trabalho apresentado à disciplina de Introdução à Informática Aplicada a Engenharia do curso de Engenharia Civil 1D, como requisito para obtenção de nota parcial do 1º bimestre da Faculdade Educacional Araucária.. Professor: Apledinei Savoldi

CURITIBA 2013

SÚMARIO

Introdução....................................................................................................... 6 Objetivo .......................................................................................................... 7 Principais Precursores dos computadores ..................................................... 8 Computadores (hardwares) ........................................................................... 13 Primeira Geração - Tecnologia de válvulas 1940 - 1955 .............................. 13 2ª Geração - Utilização do transistor 1955 – 1965 ....................................... 15 3ª Geração – Circuitos integrados 1965 – 1980 ........................................... 16 Sistemas Operacionais ................................................................................. 21 Cronologia dos SO ....................................................................................... 21 Surgem os primeiros Sistemas Operacionais ............................................... 21 Linguagens de Programação ........................................................................ 24 História ......................................................................................................... 24 As Linguagens de Programação .................................................................. 25 Cronologia .................................................................................................... 27 Outras Linguagens ....................................................................................... 46 Conclusão..................................................................................................... 48 Bibliografia .................................................................................................... 49

Resumo
A evolução tecnológica é resultado do aprimoramento dos equipamentos construído com o objetivo de diminuir o esforço do homem e conseqüente acelerando os processos para o qual se destinavam. Percebemos que o homem possui capacidade ilimitada para criar coisas. A necessidade constante de adquirir conhecimento faz com que a humanidade possa sempre encontrar novas alternativas para transformar o mundo em um ambiente melhor, deixando para as futuras gerações um excelente legado. Os computadores foram aperfeiçoados paulatinamente, sempre que novas técnicas eram exigidas, ou novos pesquisadores percebiam sua necessidade e a oportunidade de uma nova invenção. Os Sistemas Operacionais foram resultados de um conjunto de estudos quando houve a necessidade de uma maior interação entre o homem e as máquinas. As Linguagens de Programação permitiram o desenvolvimento de varias rotinas e os computadores podiam interpretá-las através de maneira específica cumprindo o seu verdadeiro propósito – facilitar a vida do homem.

Palavras chaves: tecnologia, linguagens de programação.

computadores,

sistemas

operacionais,

technology.to facilitate the life of man. The constant need to acquire knowledge makes humanity can always find new alternatives to make the world a better environment. operating systems. leaving future generations a great legacy. when new techniques were required. Keywords: languages. The operating systems were the result of a set of studies where there was a need for greater interaction between man and machine. programming . The programming languages allowed the development of various routines and computers could interpret them through specific way fulfilling its true purpose . We realize that man has unlimited ability to create things.Abstract Technological progress is a result of upgrading the equipment built with the aim of reducing the effort of man and the consequent speeding up the processes for which they were designed. or new researchers perceived their need and opportunity for a new invention. computers. The computers were gradually improved.

A palavra cálculo que utilizamos hoje é proveniente deste sistema de contagem a qual deriva da palavra latina calculus que significa pedrinha. dando origem aos números. domesticar os animais. Além deste método de contagem também eram utilizados nós em cordas. de COM -. Origem do Latim COMPUTARE. Um exemplo clássico é o de um pastor de ovelhas. começaram a surgir novas formas de “transações comerciais”. que ao soltar seus animais de manha para pastar colocava em saco de couro uma pedrinha. pois cada animal correspondia á uma pedra e ao final do dia quando os animais eram recolhidos as pedras eram transferidas de sacos e no caso de diferença (sobra de pedras) tinham á certeza que o animal referente ao determinado tipo de pedra havia fugido.. estimar. avaliar. desenhos nas cavernas e outros tipos de marcação. talhes (cortes) em ossos. e conseqüente a inventos que são os precursores na historia da computação1 Com a passagem dos séculos as máquinas foram aperfeiçoadas e rotinas anteriormente executadas de maneira manual. construir casas. etc. somar. “calcular. marcas nas paredes. pois no inicio os homens sobreviviam apenas de produtos extraídos da natureza. o que é o objeto principal de nosso trabalho. deste fato houve a necessidade de aperfeiçoamento. ou seja teve o inicio das atividades humanas. Este processo provavelmente surgiu quando o homem começou a plantar. sido roubado ou devorado por algum predador e no caso da falta de pedras significava que algum animal havia sido acrescentado ao rebanho (então uma nova pedra era acrescentada ao saco). 2 . mais PUTARE. Com a evolução da humanidade e o aumento da produção. estimar”. evoluíram para mecânicas até tornarem-se rotinas automáticas executadas a partir de um programa (software2). “calcular.Introdução Não sabemos precisar quando surgiu a necessidade de contagem. 1 Seqüência de instruções específicas para execução de uma tarefa por um computador de maneira lógica. da caça e da pesca. “junto”. contar”. e diante.

pois não se trata de um TCC3.um trabalho acadêmico de caráter obrigatório e instrumento de avaliação final de um curso superior. 3 . Técnicas de Conclusão de Curso .Objetivo Demonstrar a evolução dos computadores e sistemas operacionais desde seu surgimento até os dias atuais. mas sim uma introdução na elaboração e apresentação de trabalhos acadêmicos seguindo os padrões das Normas Técnicas Brasileiras aplicadas a esta finalidade. seus autores e as aplicações praticas a que se destinavam. no entanto não nos aprofundaremos nas explicações e demonstrações. Faremos também um breve relato de seus precursores.

O ábaco é o primeiro modelo de calcular utilizado que é conhecido pela humanidade. No final do século XVI.C. Estruturas de Napier Imagem de domínio publico internet. com fichas. idealizou um dispositivo baseado em bastões que continham . centenas e milhares provavelmente surgiu na Mesopotâmia em 5. dezenas. o matemático escocês John Napier.Principais Precursores dos computadores Ábaco Imagem de domínio publico internet. Consistia em uma moldura com hastes de arames dispostas de forma paralela no sentido vertical. inventor dos logaritmos naturais.500 a. bolas ou outro tipo de contas com capacidade de deslizar livremente formando unidade.

realizava apenas soma e subtração e o resultado era mostrado numa seqüência de janelinhas. mais tarde. recebendo o nome de Máquina Aritmética de Pascal. Também idealizou uma calculadora com cartões que permitia a realização de multiplicações e recebeu o nome de Estruturas de Napier Máquina Aritmética de Pascal Imagem de domínio publico internet. capaz de multiplicar e dividir de forma automática. . mas terminou. a máquina era feita de rodas dentadas que simulavam o funcionamento do ábaco.números. Calculadora de Leibintz Imagem de domínio publico internet. Primeiro esta máquina foi chamada de PASCALINA. Em 1642 o filósofo e matemático francês Blaise Pascal inventou a primeira máquina automática de calcular.

Esta máquina pode ser considerada a primeira máquina mecânica programável. Em 1801 Joseph Marie Jacquard construiu um tear automático que aceitava entrada de dados através de cartões perfurados para controlar a confecção e desenho dos tecidos. Tear de Jacquard Imagem de domínio publico internet. em 1672.O matemático alemão Gottfried Wilhelm Von Leibniz. construindo a calculadora universal que realizava soma. . divisão e ainda calculava raiz quadrada. subtração. aperfeiçoou a Máquina de Pascal. multiplicação.

memória. Pelos mesmos motivos da sua invenção anterior Babbage não viu essa sua máquina ser construída. pois dispunha de programa. em 1833. professor de Cambridge e matemático. para a avaliação de funções e a obtenção de tabelas. Maquina de Hollerith . mas devido a esse projeto.Máquina Analítica ou Diferencial Imagem de domínio publico internet. A idéia da construção surgiu da necessidade de se realizar automaticamente tabelas de logaritmos e funções trigonométricas. Mas esta máquina não chegou a ser construída devido as limitações tecnológicas da época Babbage. ele ficou conhecido como Pai da Informática. Charles Babbage. projetou a Máquina Analítica ou Diferencial. que consistia num dispositivo mecânico baseado em rodas dentadas. que de certa forma era semelhante aos computadores atuais. unidade de controle e periféricos de saída. No ano de 1822. idealizou a Máquina das Diferenças.

Herman Hellerith. teve início a Teoria Matemática da Computação. Essa é a primeira tentativa de realização automática de uma aplicação comercial. em 1895. Em 1936 Alan M. na qual se define um algoritmo como a representação formal e sistemática de um processo. Em 1886 idealizou um cartão perfurado que guardaria as informações coletadas no censo e uma máquina capaz de tabular essas informações. percebeu que a realização do censo anual demorava cerca de 10 anos para ser concluído e que a maioria das perguntas tinha como resposta sim ou não. Maquina de Turing Imagem de domínio publico internet. funcionário do Departamento de Recenseamento dos EUA. Hollerith. perfurando-se cerca de 56 milhões de cartões.Imagem de domínio publico internet. Construiu então a Máquina de Recenseamento ou Máquina Tabuladora. Aproximadamente em 1885. chegando a construção teórica das Máquinas de Turing. e através da qual se demonstra que nem todos os processos são representáveis. Ficou portanto demonstrado a existência de problemas sem solução . Turing desenvolveu a teorias de uma máquina capaz de resolver todo o tipo de problemas. inclui a função de somar em sua máquina para poder utilizá-la também na contabilidade das Ferrovias Centrais de New York. Com os estudos de Turing.

. Computadores (hardwares) Primeira Geração . que abrange o conjunto de estudos destinados a encontrar formas de descrição e representação de processos algoritmicos.Tecnologia de válvulas 1940 1955 Com há necessidade de aperfeiçoamento em cálculos matemáticos com respostas mais rápidas e precisas para a tomada de decisões.algorítmica e chegou-se a seguinte conclusão: um problema terá solução algorítmica se existir uma Máquina de Turing para representá-lo. Mark-I Imagem de domínio publico internet. Desses estudos surgiu a Teoria da Computabilidade. desenvolvido especialmente para auxiliar na guerra para os lançamentos tivessem uma maio precisão.

desenvolve a idéia de Babbage junto com cientistas de seu departamento e engenheiros da IBM. da universidade de Harvard. Como resultado desse desenvolvimento construiu o primeiro computador eletro-mecânico baseado em rêles e engrenagens. realmente um computador projetado para fins militares. Mauchly e J. ENIAC Imagem de domínio publico internet. Presper Eckert (que era um gênio em engenharia.Em 1937. que recebeu o nome de MARK-I. na Universidade de Pensilvânia. ou seja. O ENIAC tinhas as seguintes características: totalmente eletrônico . Howard H. Aiken. Grande consumo de energia e vários problemas devido à muito aquecimento. “Computador e Integrador Numérico Eletrônico”.ASCC). Era o primeiro computador digital eletrônico de grande escala e foi projetado por John W. mas somente em 1946 surgiu o ENIAC – Eletronic Numerical Interpreter and Calculator. pois quando tinha apenas 8 anos construiu um rádio a cristal e colocouo num lápis). pelo Departamento de Material de Guerra do Exército dos EUA. Circuitos eletrônicos e válvulas de uso restrito precisavam ser reprogramados a cada tarefa. Foi iniciado em 1943. denominado Calculadora Automática de Seqüência controlada (Automatic sequence Controlled Calculator .

sendo cada um em seu próprio recipiente. Estes equipamentos ainda eram grandes e a instalação do IBM 1401 ocupava uma sala. 30 toneladas de peso.005 s com números de 10 dígitos.000 conexões de solda. além de ser rápido era bem menor que seus antecessores. surgiu em 1955 e possuía 800 transistores. 180 m² de área construída. 5. 2ª Geração .0002 s e uma multiplicação em 0. contemporâneo a este temos o IBM 1401 que tinha 4096 bytes de memória operando em ciclos de 12 microssegundos. . 500.possuía 17. Primeiro computador fabricado com transistores da BELL Laboratories.Utilização do transistor 1955 – 1965 Tradic Imagem de domínio publico internet. em 1958 a IBM lançou o IBM TX-0 com um monitor de vídeo de alta qualidade para os padrões da época.5 m de altura e 25 m de comprimento capaz de realizar uma soma em 0.468 válvulas.

mas o seu nome oficial foi sempre DIGITAL. que por sua vez se fundiu com a Hewlett-Packard. Desde 1957 até 1992 a sua matriz era num velho moinho em Maynard. Em 2006 as suas linhas de produtos ainda são produzidas. Os seus produtos PDP e VAX eram os mais populares mini-computadores nas comunidades cientifica e de engenharia nos anos 70 e 80. agora sob o nome da HP. É referida muitas vezes. dentro da indústria como DEC. Digital Equipment Corporation foi a companhia dos Estados Unidos pioneira na indústria de computadores. Vax é uma arquitetura de Computadores de 32 Bits que suporta um Conjunto de Instruções ortogonais (código de maquina) e endereçamento virtual. . A DIGITAL foi comprada pela Compaq. Massachusetts.3ª Geração – Circuitos integrados 1965 – 1980 Computador VAX Imagem de domínio publico na internet.

pois era fácil de ligar. computadores pessoais. Todos já tinham essa forma básica de hoje: teclado. . APPLE II O Apple II era parecido com os micros de hoje. Depois disso. seu tamanho era de 8". Esses computadores de uso pessoal ficaram conhecidos como PCs (do inglês Personal Computer). a CPU. monitor e unidade central de processamento.Disquete 8” Em 1971 a IBM lança no mercado mundial o primeiro disquete. foram aparecendo vários outros. o mouse ainda não existia nessa época. mexer e transportar.

Também ganharou um novo material. sendo o antecessor de todos os micros existentes na atualidade. onde a indústria dedicou esforços com o enfoque dos usuários poderem conectar seus computadores a outros. 4ª Geração – Circuitos de larga escala 1980 – 1990 PC-5150 Em 1981 é lançado o PC-5150 pela IBM. iniciando a parceira entre estes dois gigantes da época 5ª Geração – ICVLSI – Integrated Circuit Very Large Scale – década 90 Esta classificação surge em meados da década de 1990. o silício. mas com transistores. O foco principal desta geração é a conectividade. sistemas especializados e linguagem natural. tinha 64 Kbytes de memória RAM e 4. Estava surgindo o conceito de supervia da informação capturando a mente dos profissionais da área de TI e usuários comuns. .Esses micros não funcionavam com válvulas. que é um tipo de areia refinada.7 Mhz. como o Eniac. neste mesmo período o termo passou a envolver outros elementos nas mais diversas áreas de pesquisas relacionados a inteligência artificial. criado pelos japoneses visando demonstrar equipamentos mais potentes e “inteligentes”. que foram evoluindo e ficando cada vez menores. O sistema operacional utilizado era MS-DOS desenvolvido pela Microsoft.

. caixas de som e microfone.Compaq Presario 5528 Em 1995 a linha Compaq Presario foi um grande sucesso da Compaq. o nano é um aparelho MP4 interessante devido às dimensões e aos pesos reduzidos. a um preço inferior. Além disso. Porém. 16 MB memória RAM. 6ª Geração – IPAD – IPOD – Smart Phone – Tablets e novas tecnologias – Século XXI No mesmo dia em que o iPhone 5 chegou ao mercado. era integrado o monitor e CPU. tais possibilidades encontram-se também em outros aparelhos. modem de 34Kb. drive de CD ROM. com poucos ícones na tela inicial. também foi anunciada uma nova versão do iPod nano. Este modelo 5528 tinha um ótimo preço. Sem inovações muito relevantes. HD de 320Mb. possui uma interface otimizada para utilização em movimento. Tinha um processador Intel Pentium de 75 MHz.

Possui uma nova ligação. alto-falantes ou auto rádios que tenham a mesma tecnologia. para carregar a bateria e conectar ao computador. Não traz leitor de cartões. 4 PROTESTE. o novo nano pesa apenas 31 gramas. A bateria resiste 30 horas para reprodução de música e tem rádio FM com a possibilidade de gravar. 75-76 . muito menor do que o antigo conector de 30 pinos.5 polegadas. sobretudo para atividades esportivas4. A versão 4. (2012). leitor de fotos e vídeos e pedômetro (contabiliza determinada quantidade de passos). Com pequenas dimensões e tela de 2.A nova versão tem 16 GB de capacidade.0 do Bluetooth permite conectá-lo com fones de ouvido. ProTeste . sendo impossível expandir sua memória. chamada de “Lightning”. uma vantagem dentre os MP4 players. IPOD Nano. O acesso às funções é rápido e intuitivo.

teclado. HD. criando uma fila de processos que garante que todos receberão sua parcela de processamento. . tais como o controle de todos os elementos desse conjunto. memória.Sistemas Operacionais Sistemas operacionais são sistemas de computadores que permitem a interatividade do usuário com o conjunto de dispositivos eletrônicos que fazem parte de um Computador. que estão sendo executados pelo processador. sejam controlados e utilizados por um usuário final. processador e demais periféricos. Tudo devia ser programado detalhadamente pelo desenvolvedor. desenvolvido pela GM Laboratories para o computador IBM 701 através da programação em Batch que utilizava cartões perfurados e depois fitas magnéticas. veja um breve resumo sobre a evolução dos sistemas operacionais ao longo do tempo: Computadores não possuíam Sistemas Operacionais Inicialmente Década 40 – cada programa executava sozinho e tinha total controle do computador. a computação propriamente dita e o envio dos resultados para os periférico de saída. já que estão diretamente interligados. Cronologia dos SO A história dos sistemas operacionais se mistura a história dos computadores. O sistema operacional permite a organização dos processos criando a interfase necessária para que os elementos como. mouse. monitor. deis da carga do programa em memória. Os sistemas operacionais são parte fundamental dos computadores. Surgem os primeiros Sistemas Operacionais Década 50 – O conceito de sistema operacional apareceu durante a segunda geração da computação moderna (1955 – 1965). varredura dos periféricos de entrada para busca de dados. são responsáveis por organizar os processos (programas).

um professor de computação holandês. Mais tarde. 1969 – Ken Thompson e Dennis Ritchie. pesquisadores dos Bell Labs. anuncia o desenvolvimento do CTSS – Compatible Time-Sharing System. um sistema operacional comprado da empresa Seattle Computer Products em 1980. o primeiro a ter uma interface gráfica totalmente incorporada ao sistema. 1981 – a Microsoft lança o MS-DOS. 1987 – IBM e Microsoft apresentam a primeira versão do OS/2. 1991 – Linus Torvalds. 1993 – a Microsoft lança o Windows NT. 1987 – Andrew Tanenbaum. Um projeto conjunto entre MIT. que foi batizado como Minix. 1993 – lançamento dos UNIX de código aberto FreeBSD e NetBSD.1961 – o grupo do pesquisador Fernando José Corbató. do MIT.01. um estudante de graduação finlandês. desenvolve um sistema operacional didático simplificado. as duas empresas rompem a parceria. o primeiro sistema 32 bits da empresa.0. 1985 – primeira tentativa da Microsoft no campo dos sistemas operacionais com interface gráfica através do MS-Windows 1. logo abraçado por centenas de programadores ao redor do mundo. um sistema multitarefa destinado a substituir o MS-DOS e o Windows. mas respeitando a API do UNIX.0. 1984 – a Apple lança o sistema operacional Macintosh OS 1. inicia o desenvolvimento do Linux. cujas idéias inovadoras irão influenciar novos sistemas durante décadas. com compartilhamento de tempo e excelente suporte a discos. a IBM continua no OS/2 e a Microsoft investe no ambiente Windows. 1965 – a IBM lança o OS/360. um sistema operacional avançado. lançando na rede Usenet o núcleo 0. criam a primeira versão do UNIX. o primeiro sistema operacional que possuía compartilhamento de tempo. . GE e Bell Labs define o sistema operacional Multics.

6. 2004 – núcleo Linux 2.c.2001 – Apple lança o MacOS X. [HSO] . um sistema operacional derivado da família UNIXBSD. 2009 – Windows 7. 2006 – Windows Vista. 2001 – Windows XP.

. foram criados então Autocodes que geravam códigos automaticamente em Assembly quando se passava informações pré-definidas. Este passa por um Compilador. pronto para ser executado pelo processador. História O surgimento das LP se deu exclusivamente para fins militares. Possuía características como as chamadas de função (subrotinas).Linguagens de Programação Tudo começou com zeros e uns. seu criador Konrad Zuse. que expressam instruções para um computador. Data-se em 1944 o surgimento da primeira LP. Envolvendo assim muito esforço para converter os cálculos numéricos em instruções Assembly. Uma Linguagem de Programação (doravante denominada LP) é um conjunto finito de regras formadas a partir de uma gramática formal. visto que a função básica de uma LP era agilizar o processo que um analista tinha em operar o computador para decifrar criptografias inimigas. Nos meados da década de 50 os computadores que já passaram a utilizar chips em vez de válvulas tinham seus Códigos escritos diretamente em Linguagem de Máquina. A construção de uma linguagem de programação pode ser descrita pelas gramáticas livres de contexto ou pela notação BNF (Forma de Bakcus – Naur). estrutura de repetição. gerenciamento. até as arquiteturas de software de armazenamento. engenheiro alemão que projetou na Suíça o Plankalkü. gerar cálculos para rotas de mísseis etc. instruções condicionais e tratamento de exceções. o Assembly. Seu trabalho foi esquecido por anos e somente foi publicado oficialmente em 1972. As instruções seguindo regras gramaticais estabelecidas de forma sintática e semântica são descritas em um Texto Fonte chamado também de Código Fonte. atribuição. analises e relatórios sofisticados como os de hoje. matrizes. escrito especificamente para a linguagem gerando ao fim de sua execução um Código de Máquina.

Como era a primeira projeção de uma LP de alto nível o Fortran necessitava que sua formatação do Código Fonte fosse bastante precisa. ou seja. sua simplicidade e facilidade para aprendizado e a capacidade de lidar com números complexos ajudaram para sua difusão. Médio Nível – quando se utiliza símbolos simples. Adaptada para a escrita de programas numericamente intensos esta LP se tornou a partir de 1966 a mais usada no meio científico. se escreve um código muito próximo ou totalmente entendido pela máquina. Bakus foi criado a LP chamada Fortran. seu código fonte é totalmente abstrato ao código que a máquina conhece. Esta abstração pode ser classificada como: Baixo Nível – quando a abstração é relativamente pouca.Em 1954 desenvolvido para o IBM 704 por uma equipe da IBM chefiada por John W. Uma gama enorme de compiladores para os diversos computadores foram criados. Alto nível – quando se utiliza de símbolos complexos. . formas novas de resolver os problemas devem ser encontradas. isto gera novas necessidades e por sua vez. Altíssimo Nível – quando os símbolos são altamente complexos. erros de sintaxe e póscompilação eram bastante comuns. A evolução das LP tem acompanhado a ordem cronológica com que os computadores se desenvolvem. As Linguagens de Programação Uma LP tem por característica comum a abstração seja parcial ou total da linguagem de máquina que é enxergada pelo computador. estes geram um código que é inelegível pela máquina mas completamente compreendido pelo Homem. estes geram um código intermediário entre a compreensão humana e da máquina.

Como função única da LP é facilitar a forma como criamos instruções para o computador executar. Seja para um software no celular. computador de um automóvel. Existindo cada vez mais equipamentos programáveis. Este Código Objeto é voltado unicamente para um tipo de plataforma. O mecanismo utilizado então é um software chamado Interpretador. satélites. Isto é possível. de forma a tornar mais flexível à utilização. uma LP pode ser atualmente ser classificada como para compilação ou para interpretação: Compilação – quando o método utilizado traduz todo o Texto Fonte para a Linguagem de Máquina antes da execução. Aplicação É imprescindível para a elaboração rápida de um sistema a utilização de uma LP. geladeiras etc. mais LP serão desenvolvidas para suprir as necessidades que estes equipamentos possuirão para interagir com seu dono. sua conversão para a Linguagem de Máquina não é tão eficiente quando um sistema escrito diretamente em Linguagem de Máquina. pois dois programadores criam soluções diferentes para um único problema. aeronaves. mas seu custo final de produção compensa esta deficiência. um conjunto infinito de Códigos Fontes. as análises no Texto Fonte são simultâneas e os erros reportados ao utilizador. O mecanismo utilizado é um software chamado compilador que executa diversas tarefas de análise e síntese no Texto Fonte gerando a final um Código Objeto já inteiramente compilado e que poderá ser executado diversas vezes. mesmo se utilizando a mesma LP. Sua utilização geralmente envolve execuções multi-plataforma para o mesmo Texto Fonte. o conjunto finito de regras denominado então Linguagem de Programação gera. Quanto à forma como será transformada em Linguagem de Máquina. É certo que estas duas formas mesmo que distintas podem ser usadas de forma conjunta em uma LP. . Interpretação – quando o método utilizado traduz de forma simultânea à sua execução o Texto Fonte.

Equipamento – Celular. que passa então a ser escrito automaticamente para uma LP e em seguida ser compilado. Automóvel etc. arrays. FORTRAN The IBM Mathemat ical FORmula TRANslating System: FORTRAN por John Backus. Estudos etc. Cliente/Servidor etc. Mac etc. records. Pager. Arquitetura – Unix. [HLP1] Cronologia PLANKALKÜL – 1945 Criada por Konrad Zuse. Estruturas de dados avançadas: reais. restringindo assim as outras. Física. a escolha de qual LP utilizar varia de acordo com: Forma de interação com o usuário final – Web. Windows. 1954 .Dentre outras. Esta técnica promete agilizar ainda mais a forma como um software é criado. O equipamento ainda pode ser desenvolvido sob um determinado tipo de LP. Foi a primeira linguagem de programação de alto nível do mundo Nunca implementada. O programador utiliza símbolos e formas abstratas para gerar o Texto Fonte. A evolução que se calcula para as LP são os chamados “Geradores de Software” que se destinam a abstrair da programação a LP. Especificação – Matemática.

se popular FORTRAN II .testado (DO) Compilador lançado em abril de 1957.Projetado para o IBM 704 Ambiente de desenvolvimento: Computadores tinham pouca capacidade de processamento e memória e não eram confiáveis Aplicações científicas Sem metodologia ou ferramentas de programação FORTRAN I – 1957 Primeira versão implementada do FORTRAN I/ O formatado Nomes podiam ter até 6 caracteres Subprogramas definidos pelo usuário Comando de seleção de t rês modos (IF aritmético) Loop de contagem pós. principalmente devido à baixa confiabilidade do 704 Código era muito rápido Rapidamente tornou.ano de esforço.1958 Corrigiu vários “bugs” do Fortran I . depois de 18 homens. Programas maiores que 400 linhas raramente compilavam corretamente.

62 FORTRAN III nunca largamente distribuído Declaração de tipos explícita Comando de seleção lógica Nomes de subprogramas podiam ser parâmetros Padrão ANSI em 1966 FORTRAN 77 .1990 Funções built .in para operações com arrays Arrays dinâmicos Ponteiros Tipo registro Recursão Novas estruturas de controle.THEN.1978 Manuseio de character string Comando de cont role de loop lógico Comando IF.1960. ex.Compilação de subrotinas independente 50% do código escrito para o IBM 704 era FORTRAN FORTRAN IV . CASE Checagem de tipo de parâmetro Módulos .ELSE FORTRAN 90 .

contrário. .1959 Características: Somente dois tipos de dados: átomos e listas Sintaxe baseada no lambda calculus Pioneira da programação funcional Não necessita variáveis ou atribuição Controle via recursão e expressões condicionais Paradigma alternativo ao modelo imperativo Ainda uma das linguagens dominantes Exemplo de Função em LISP .Autor do FORTRAN LISP . retorna True se as duas listas forem iguais. Função LISP que pega duas listas como argumentos e . e NIL (falso) caso .

.1960 En um encontro em de 6 dias em Paris o ALGOL 58 foi modificado Novas características: ..end) Ponto e vírgula como separador de comandos Operador de atribuição := IF com cláusula ELSE.1958 Características da linguagem: Conceito de tipo formalizado Nomes podiam ter qualquer tamanho Arrays podiam ter um número qualquer de índices Parâmetros eram separados por modo (entrada/ saída) Índices eram colocados entre colchetes Comandos de composição de blocos (begin .(DEFUN equal (lis1 lis2)) (COND ( (ATOM lis1) (EQ lis1 lis2)) ( (ATOM lis2) NIL) ( (equal (CAR lis1) (CAR lis2)) (equal (CDR lis1) (CDR lis2))) ( T NIL) )) ALGOL 58 .IF ALGOL 60 .

result. average. counter. sum. portanto difícil de implementar Falta de apoio da IBM (adivinha por que?) Exemplo de programa em ALGOL 60 begin integer array intlist [1:99]. especialmente nos EUA Motivos: Nenhum I/ O e o conjunto de caracteres faziam com que os programas não fossem muito portáveis Muito flexível.Estrutura de blocos (escopo local) Dois modos de passagem de parâmetros Subprogramas recursivos Arrays em pilhas dinâmicas Ainda nenhum I/ O nem manuseio de strings Sucessos: Foi o padrão para publicação de algoritmos por mais de 20 anos Todas as linguagens imperativas são baseadas nela Primeira linguagem independente de máquina Primeira linguagem cuja sintaxe foi definida formalmente (BNF) Falha: Nunca foi amplamente utilizada. . integer listlen.

for counter := 1 step 1 unt il listlen do begin readint ( intlist[counter]). sum := sum + int list [counter]. end. readint(listlen). if (listlen > 0) L (listlen < 100) then begin comment Read input into an array and compute the average. mas não é um superconjunto daquela linguagem Projeto é baseado no conceito de ortogonalidade Fonte de várias idéias adotadas por outras linguagens Contribuições: Estruturas de dados definidas pelo usuário Arrays dinâmicos (chamados flex arrays) SIMULA 67 .1967 . ALGOL 68 . result := 0.sum := 0.1968 A partir do desenvolvimento do ALGOL 60.

mesmo que signifique menos recursos Deve ampliar a base de usuários de computadores Não deve ser influenciado por problemas de implementação (compiladores) Contribuições: . entre 1962 e 1964 na Noruega Projetada inicialmente para simulação de sistemas Baseada no ALGOL 60 e SIMULA I Contribuições: Co.Baseada no SIMULA I.1960 Objetivos do projeto: Deve parecer com inglês simples Deve ser fácil de usar.rotinas: um tipo de subprograma que pode ser reiniciado a partir do ponto onde previamente havia parado POO AUTORES DO SIMULA COBOL . criada por Kristen Nygaard e OleJohan Dahal.

com hífens Data Division Exemplo de programa em COBOL IDENTIFICATION DIVISION PROGRAMID. OBJECT CONPUTER. CONFIGURATION SECTION.1965 Projetado pela IBM e SHARE Incluia o que era considerado o melhor do: ALGOL 60: recursão estrutura de blocos FORTRAN IV . FD BALFWDFILE PL/ I . ENVIRONMENT DIVISION. FILE SECTION. PRODUCEREORDERLISTING. DECVAX. FILECONTROL. SOURCE CONPUTER. INPUTOUTPUT SECTION.Estruturas de dados hierárquicas (registros) Comandos de seleção aninhados Nomes longos (até 30 caracteres). DECVAX. SELECT REORDERLISTING ASSIGN TO LOCALPRINTER. SELECT BALFWDFILE ASSIGN TO READER. DATA DIVISION.

RESULT) FIXED. DECLARE (LISTLEN. COUNTER. RESULT = 0. SUM. PROCEDUREOPTIONS (MAIN). DECLARE INTLIST (1:99) FIXED. .compilação de rotinas em separado comunicação por dados globais COBOL 60 estruturas de dados I/ O (facilidades para geração de relatórios) Linguagem grande e complexa Ut ilizada em aplicações científicas e comerciais Sucesso parcial Contribuições: Primeiro tratamento de exceção (23 tipos) Tipo de dado ponteiro Referência a seções de arrays EXEMPLO DE PROGRAMA EM PL/ I PLIEX. AVERAGE. IF (LISTLEN > 0) & (LISTLEN < 100) THEN DO. SOM = 0. GET LIST (LISTLEN).

proposta alternativa apresentada pelos que consideraram a ALGOL68 muito complexa Simplicidade e tamanho reduzido eram objetivos de projeto Projetada para o ensino de programação estruturada Ainda é a uma das LPs mais usadas para o ensino de programação estruturada nas universidades Exemplo de programa em Pascal program pasex (input .1971 Criada por Niklaus Wirth Baseada no ALGOL W. var intlist :int list type. END. GET LIST (INTLIST (COUNTER)).. begin . counter. SUM = SUM + INTLIST (COUNTER).99] of integer. Pascal . / * COMPUTE THE AVERAGE */ AVERAGE = SUM / LISTLEN. output ). sum. average. result : integer. listlen. type intlist type = array[1./ * READ INPUT DATA INTO AN ARRAY AND COMPUTE THE SUM */ DO COUNTER = 1 TO LISTLEN.

end. AUTOR DA LINGUAGEM PASCAL BASIC . sum := 0. if ((listlen > 0) and (listlen < 100) then begin {read input into an array and compute the sum } for counter := 1 to list len do begin readln(int list [counter]). readln(list len).1964Criada por Kemeny & Kurtz em Dartmouth Objetivos de Projeto: Fácil de aprender e usar (por outros que não fossem estudantes de ciências) . sum := sum + int list [counter].result := 0.

sem entrada pelo terminal Simples: 14 tipos de comandos e 1 tipo de dados Dialetos populares atuais: QuickBASIC e Visual BASIC Exemplo de programa em QUICKBASIC DIM int list (99) result = O sum = O INPUT list len IF list len > O AND list len < 100 THEN REM Read input into an array and compute the sum FOR counter = 1 TO list len INPUT intlist (counter) sum = sum + int list (counter) AUTORES DO BASIC .Linguagem “agradável e amigável” Rápida implementação de pequenas aplicações Tempo do usuário mais importante que tempo de máquina Versão inicial era compilada.

Mesa.Modula2 Criada entre 1975-76 por Niklaus Wirth na ETH. Adiciona ao Modula2: POO. . procedimentos como tipos e características de baixo nível projetadas para programação de sistemas. suportando tipos abstratos de dados. Recursos do Pascal mais módulos. Baseada no Modula2. Tratamento de exceção. Garbage collect ion. Concorrência. Cedar e Modula2+. Modula3 Criada no final dos anos 80 por Systems Research Center (Digital) e Olivetti Research Center.

B e ALGOL68 Operadores poderosos. counter+ + ) { scanf(` ` %d''. if ((list len > 0) && (list len < 100) { / * read input into an array and compute the sum */ for (counter = 0. BCPL. counter < list len. sum = sum + int list [counter]. result = 0. projetada anos antes. &int list[counter]). . average. Bell por Dennis Richie Ancestrais incluem CPL. sum. result . list len. C – 1972 Projetada para a programação de sistemas nos Lab. counter. sum = 0. &list len). checagem de tipos pobre Inicialmente popular entre usuários UNIX Exemplo de programa em C void main() { int int list [98]. scanf(` ` %d''.Delphi (Borland) Lançado em 1995 Pascal mais características de suporte a POO Mais elegante e seguro que C+ + Baseada em Object Pascal.

vel_max(volvo. vel_max(dodge.24). tempo(chevy.20).100). . com ajuda de Kowalski da Universidade de Edinburgh Baseda em lógica de predicados de 1ª.ordem Não procedural LP declarativa que usa um padrão de inferência (resolução por refutação) para inferir se expressões fornecidas são verdadeiras (e sob que condições) ou não.95). tempo(dodge.AUTOR DA LINGUAGEM C Prolog .105). Exemplo de programa em Prolog vel_max(ford. por Comerauer e Roussel.1972 Desenvolvido na Universidade de Aix Marseille.21).80). vel_max(chevy. tempo(ford.

Primeiro compilador operacional surgiu 4 anos depois que o projeto da linguagem tinha sido completado.24).1988 Facilidades para interface gráfica Suporte para POO Mecanismos de cont role para dados compartilhados .1983 Contribuições: Suporte para abstração de dados Facilidades para tratamento de exceções Unidades de programa genéricas: versões instanciadas geradas pelo compilador de acordo com tipos de dados específicos Suporte à execução concorrente de unidades de programa Comentários: Projeto via contrato competitivo Incluiu tudo que se conhecia sobre engenharia de software e projeto de linguagens Não confiável por causa da alta complexidade Compiladores de difícil construção. Ada 95 . distancia(X.Tempo).Y) :. Ada . Y is Velocidade * Tempo.Velocidade).tempo(volvo.vel_max(X. tempo(X.

INT_LIST : INT_LIST_TYPE.1980 Desenvolvida pela Xerox PARC. RESULT: INTEGER. GET (LIST_LEN). SUM. AVERAGE. depois por Adele Goldberg Primeira implementação completa de uma linguagem orientada por objetos (abstração de dados.o governo americano. Exemplo de programa em Smalltalk class name Polygon .Apesar de tão completa. type INT_LIST_TYPE is array (1. LIST_LEN. use TEXT_IO. Smalltalk – 1972. begin RESULT := 0. procedure ADA_EX is package INT_IO is new INTEGER_IO (INTEGER). Ada só foi largamente utilizada pela organização que promoveu seu desenvolvimento: . use INT_IO.. Exemplo de programa em ADA with TEXT_IO. herança e vinculação de tipos dinâmica) Pioneira na interface gráfica baseada em janelas.99) of INTEGER. SUM := 0. inicialmente por Alan Kay.

superclass Object instance variable name ourPen numSides sideLenght “Class methods” “Create an instance” new ^ super new getPen “Get a pen for drawing polygons” getPen AUTORES DO SMALLTALK C+ + .1985 Desenvolvida nos Lab. Bell por Stroustrup .

baseada em C+ + . Linguagem de .Baseada no C and SIMULA 67: facilidades para POO do SIMULA 67 adicionadas ao C Possui tratamento de exceção Linguagem grande e complexa. mas significativamente simplificada (não usa ponteiros) Inclui suporte a applets e concorrência Padrão ANSI aprovado em novembro de 97 Outras Linguagens • ML (1973) – Meta Language. junto com POO AUTOR DO C++ Java . em parte por suportar programação procedural e orientada por objetos Popularizou.1995 Desenvolvida pela Sun no começo dos anos 90 Para POO.se rapidamente.

PDF – Linguagens de formatação de textos para visualização. Padrão para operações em bancos de dads relacionais. • XML – Extensible Markup Language. Linguagem script para const rução de páginas dinâmicas. • ASP – Active Server Page.Linguagem script para o desenvolvimento de aplicações Web. • TeX/ LaTeX (1985) – Linguagem para formatação de textos científicos. • PHP (1995) . • PostScript (1982). • Perl (1987) – Linguagem script com facilidades para manipulação de texto. Versão mais recente é o SML/ NJ. orientada a objetos similar ao Perl. embutível dentro do HTML. • PYTHON (1991) – Linguagem interpretada.programação funcional. • Clipper (1984) – Linguagem de desenvolvimento de banco de dados para DOS. [HLP0] . • HTML – Hipertext Markup Language. Usado para estruturação do conteúdo de páginas HTML. • SQL – St ructured Query Language. linguagem de marcação para formatação de hipertextos. • JavaScript (1995) – Linguagem script para aplicações web executadas no cliente (CSI).

praticidade e agilidade em todos os setores que envolvem a tecnologia moderna. através da pesquisa podemos ver que ainda há muitos caminhos à serem percorridos no desenvolvimento e aperfeiçoamento de tecnologias desenvolvidas.Conclusão A História da computação foi e tem sido um grande marco para o desenvolvimento evolucionário da tecnologia. já há descobertas de novas linguagens e materiais que nos possibilitarão mais velocidade. .

S. N. A. & L. Tanenbaum.Bibliografia Chagas. disponível em A Historia Cronologica das Linguagens de Programacao: http://grupologica. (04 de SET de 2010). Acesso em 30 de ABR de 2013.net Tanenbaum. S. .saojosecampos. A.) São Paulo: PEARSON.). 75-76. Organização Estruturada de Computadores. (2008).com/historico-linguagens-programacao Mensagero. N. D. Historia dos Sistemas Operacionais. E. (2012). (2009). d. disponível em http://pesquompile. IPOD Nano. Consularo. Teixeira. Acesso em 12 de ABR de 2013. (P. P. D. (26 de AGO de 2011). Acesso em 18 de ABR de 2013. Trads. Gonçalves. Publicado.wikidot. Sistemas Operacionais Modernos (3ª ed. disponível em Tecnologia SJC: http://tecnologia. L.com/t86-ahistoria-cronologica-das-linguagens-de-programacao ProTeste. ProTeste . (1990). A. Historico das Linguagens de Programação.forumslog.