Programa de computador

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa

Um programa de computador ou programa informático é uma coleção de instruções que descrevem uma tarefa a ser realizada por um computador. O termo pode ser uma referência ao código fonte, escrito em alguma linguagem de programação, ou ao arquivo que contém a forma executável deste código fonte.

Episódio de podcast com explicação básica sobre como funciona um programa de computador, um software, com 7min3s.

Problemas para escutar este arquivo? Veja a ajuda.

História[editar | editar código-fonte]

O programa de computador surgiu antes do desenvolvimento do computador eletrônico. Um trabalho publicado em 1843 por Ada Lovelace, sugerindo uma forma para calcular os números de Bernoulli através da máquina analítica de Charles Babbage, é tido como o primeiro programa de computador.[1] [2]

A primeira aplicação prática da programação surgiu com os dispositivos baseados em cartões perfurados, que eram utilizados desde o século XVIII na indústria da confecção.[3] O empresário estadunidense Hermann Hollerith utilizou o conceito no processamento dos dados do censo dos Estados Unidos em 1890.[4]

Os primeiros computadores eletrônicos eram programados somente através de linguagens de baixo nível. Essas linguagens não disponibilizavam um nível de abstração sobre o hardware e os comandos eram interpretados diretamente pelos circuitos eletrônicos. No ENIAC, um dos equipamentos mais emblemáticos na história da computação, a programação era realizada através de ligações manuais, que uniam as unidades de processamento do computador, formando uma sequência de execução.[5]

As linguagens de alto nível surgiram por volta da década de 1940, como a Plankalkül e a Short Code, e tiveram grande impulso com o desenvolvimento dos compiladores, que tornaram a programação uma atividade possível para um grande número de pessoas. Na década de 1950 surgiu a primeira linguagem de grande aceitação, o Fortran.[6]

Terminologia[editar | editar código-fonte]

Um programa de computador é a formalização de um algoritmo em qualquer linguagem capaz de ser transformada em instruções que serão executadas por um computador gerando os resultados esperados .

O termo "software" pode ser utilizado quando se quer designar um conjunto de programas ou, mais freqüentemente, quando é feita uma referência à parte não física do sistema computacional, em contraposição ao termo "hardware", que designa o conjunto de componentes eletrônicos que constituem um computador.

Os programas de computador utilizados diretamente por pessoas comuns, como os editores de texto, são chamados de software aplicativo, ou de aplicação. Os programas voltados para dar suporte funcional aos computadores, como os sistemas operacionais, são chamados de software de sistema. Esses softwares, assim como aqueles embutidos em outros sistemas (firmware), podem ser genericamente chamados de "programas".

Execução do programa[editar | editar código-fonte]

Um programa de computador é primeiramente carregado na memória do computador (usualmente pelo sistema operacional). O sistema operacional organiza três blocos de memória, também chamados segmentos. O primeiro é o segmento de código, que é estático em tamanho e em conteúdo. Ele recebe todo o código de máquina que define as subrotinas do programa, e o endereço de cada subrotina é definido como o menor dos endereços das células de memória que a definem.

O segundo bloco de memória é o segmento de dados, e recebe as variáveis globais. Assim como no segmento de código, o endereço de cada variável é definido como o menor dos endereços das células de memória que o definem. Ele é estático em tamanho mas dinâmico em conteúdo, o que significa que este segmento não pode criar variáveis em tempo de execução, mas o conteúdo é variável, pode ser modificado.

O terceiro bloco de memória é o segmento de pilha, uma área de memória na qual armazena-se informação em forma de uma pilha. ele serve para armazenar informações como variáveis locais, parâmetros de subrotinas e endereços de retorno (para onde o fluxo do programa deve ir após a execução de uma função, isto é, o ponto logo após ela foi invocada.) Antes da execução do programa propriamente dita, a pilha é esvaziada.

A partir de então o programa é executado, instrução por instrução, até o seu término. A execução de um programa de computador pode ser abreviada em caso de erro de software ou de hardware.

Programa versus dados[editar | editar código-fonte]

A forma executável de um programa, normalmente um código objeto, é freqüentemente tratada como algo separado dos dados utilizados por este programa. Em algumas linguagens, como o LISP, esta distinção não é tão clara pois os programas podem criar ou modificar os dados, que em seguida são executados como parte do mesmo programa.

Programação[editar | editar código-fonte]

O ato de programar um computador é um processo iterativo que consiste na criação ou alteração de código fonte, seguido de testes, análise e posterior refinamento do resultado. Uma pessoa que realiza este trabalho é conhecida como programador de computador ou desenvolvedor de software. A criação de programas de computador, quando baseada em metodologias ou processos formalizados, é conhecida como engenharia de software.

Ver também[editar | editar código-fonte]

Referências

  1. Dr. Betty Toole. Ada Byron, Lady Lovelace (1815-1852). Visitado em 10/04/2007.
  2. Augusta Ada King, Countess of Lovelace. Sketch of The Analytical Engine Invented by Charles Babbage. Visitado em 10/04/2007.
  3. Jacquard Mechanism and Cards. Visitado em 10/04/2007.
  4. IBM Cards and keypunch. Visitado em 10/04/2007.
  5. Technical Description of the ENIAC. Visitado em 10/04/2007.
  6. Programming innovator made computer coding easier, more intuitive. Visitado em 10/04/2007.


Ícone de esboço Este artigo sobre Informática é um esboço. Você pode ajudar a Wikipédia expandindo-o.