Linguagens de baixo e alto nível
Podemos dividir, genericamente, as linguagens de programação em dois grandes grupos: as linguagens de baixo nível e as de alto nível.
Linguagens de baixo nível:
São linguagens voltadas para a máquina, isto é, são escritas
usando as instruções do microprocessador do computador. São
genericamente chamadas de linguagens Assembly.
Vantagens: Programas são executados com maior velocidade de processamento. Os programas ocupam menos espaço na memória.
Desvantagens: Em geral, programas em Assembly tem pouca
portabilidade, isto é, um código gerado para um tipo de
processador não serve para outro. Códigos Assembly não são
estruturados, tornando a programação mais difícil.
Linguagens de alto nível:
São linguagens voltadas para o ser humano. Em geral
utilizam sintaxe estruturada tornando seu código mais legível.
Necessitam de compiladores ou interpretadores para gerar
instruções do microprocessador. Interpretadores fazem a
interpretação de cada instrução do programa fonte executando-a dentro de um ambiente de programação, Basic e AutoLISP por exemplo. Compiladores fazem a tradução de todas as instruções do programa fonte gerando um programa executável. Estes programas executáveis (*.exe) podem ser executados fora dos ambientes de programação, C e Pascal por exemplo. As linguagens de alto nível podem se distinguir quanto a sua aplicação em
genéricas como C, Pascal e Basic ou específicas como Fortran
(cálculo matemático), GPSS (simulação), LISP (inteligência
artificial) ou CLIPPER (banco de dados).
Vantagens: Por serem compiladas ou interpretadas, tem maior
portabilidade podendo ser executados em varias plataformas com
pouquíssimas modificações. Em geral, a programação torna-se
mais fácil por causa do maior ou menor grau de estruturação de suas linguagens.
Desvantagens: Em geral, as rotinas geradas (em linguagem de
maquina) são mais genéricas e portanto mais complexas e por isso são mais lentas e ocupam mais memória.