domingo, 5 de junho de 2011

Tipos de linguagens

O computador só entende uma linguagem conhecida como código binário ou código máquina, consistente em zeros e uns. Ou seja, só utiliza 0 e 1 para codificar qualquer ação. 


  As linguagens mais próximas à arquitetura hardware se denominam linguagens de baixo nível e as que se encontram mais próximas aos programadores e usuários se denominam linguagens de alto nível. 


Linguagens de baixo nível 


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 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 a 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.


Linguagens de alto nível 


São aquelas que se encontram mais próximas à linguagem natural que à linguagem máquina. 
Estão dirigidas a solucionar problemas mediante o uso de EDD's. 


Nota: EDD's são as abreviaturas de Estruturas Dinâmicas de Dados, algo muito utilizado em todas as linguagens de programação. São estruturas que podem mudar de tamanho durante a execução do programa. Permitem-nos criar estruturas de dados que se adaptem às necessidades reais de um programa.


Trata-se de linguagens independentes da arquitetura do computador. Sendo assim, à 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 geral (qualquer tipo de aplicação) e de propósito específico (como FORTRAN para trabalhos científicos). 


Linguagens de Médio nível 


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 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. 


Gerações 


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. Ex: LISP

Nenhum comentário:

Postar um comentário