|
|
| (2 revisões intermediárias por 2 usuários não estão sendo mostradas) |
| Linha 1: |
Linha 1: |
| = Conceito = | | = Conceito = |
| Linguagens procedimentais, ou procedurais, ou ainda ''POLs'' (''Procedure-oriented languages'') são linguagens de programação que seguem, no corpo do programa, uma sequência de instruções. Em um programa neste tipo de linguagem, o programador deve fazer uma lista de instruções com cada passo a ser executado pelo computador. Pode-se afirmar que, em linguagens procedurais, o programador possui um maior controle do código do programa, sendo capaz de estabelecer o fluxo de controle e execução de seu programa.
| | <br> |
|
| |
|
| = Compiladores =
| | * |
| Um compilador é um tradutor que transforma o código fonte digitado pelo programador em um código que o computador (sistema operacional) possa compreender e executar, ou seja, um código binário, que é uma sequência de zeros e uns. A geração e otimização do código binário ocorre após uma análise sintática, léxica e semântica do código fonte. O processo é basicamente o seguinte:
| | <br> |
|
| |
|
| 1) O programador escreve o código fonte e executa o compilador.
| | = Funcioamento = |
| | <br> |
|
| |
|
| 2) O compilador procura por erros de linguagem na escrita do código fonte e gera um arquivo executável (binário).
| | * |
| | | <br> |
| 3) O programador executa o código binário e o testa.
| |
| | |
| 4) Os 3 passos anteriores são refeitos até que o programa esteja completo.
| |
| | |
| 5) O usuário final executa o código binário gerado pelo compilador (no Windows, os conhecidos arquivos com a extensão ''.exe'').
| |
|
| |
|
| = Linguagem de baixo nível = | | = Linguagem de baixo nível = |
| Uma linguagem de baixo nível é voltada à máquina(processador, microcontrolador, etc). Normalmente, envolve instruções diretas à máquina. O programador deve entender não só da linguagem em si, mas de toda estrutura e arquitetura da máquina.
| | <br> |
| | |
| *Vantagens:
| |
| | |
| ** Normalmente ocupa menos memória do que uma linguagem de alto nível.
| |
| | |
| **Por ser uma linguagem mais próxima da máquina, são necessárias menos conversões dessa linguagem para a “linguagem de máquina”, resultando em um código menor.
| |
|
| |
|
| Um exemplo de linguagem de baixo nível é a linguagem ASSEMBLY.
| | * |
| | <br> |
|
| |
|
| = Linguagem de alto nível = | | = Linguagem de alto nível = |
| A linguagem de alto nível está muito mais próxima do programador do que do dispositivo, ou seja, é uma linguagem de mais fácil compreensão. Estas linguagens são independentes da arquitetura do dispositivo, ou seja, permitem ao programador não se preocupar com o funcionamento interno da máquina. Somente necessita de um tradutor que entenda o código fonte como as características da máquina, ou seja, um compilador.
| | <br> |
|
| |
|
| As linguagens de alto nível mais utilizadas (C, Pascal, BASIC, FORTRAN, COBOL, Ada) são todas linguagens procedurais.
| | * |
| | <br> |
|
| |
|
| = Linguagens procedimentais relevantes = | | = Linguagens procedimentais relevantes = |
| As mais relevantes linguagens procedimentais são:
| | <br> |
|
| |
|
| Década de 50:
| | * |
| *FORTRAN, que foi criada para realização de cálculos matemáticos.
| | <br> |
| *COBOL, que foi criada para desenvolvimento de sistemas administrativos, mais voltados à contabilidade, bancos de dados, etc. | |
| *BASIC, que foi criada no sentido de facilitar o desenvolvimento de programas por quem não tinha experiência em programação.
| |
|
| |
|
| Década de 70:
| | = Programação estruturada = |
| *PASCAL, que foi criada para uso de programação estruturada.
| | <br> |
| *C, uma das linguagens de programação mais populares e existem poucas máquinas para as quais não existem compiladores para C. Tem influenciado muitas outras linguagens de programação.
| |
|
| |
|
| Década de 90:
| | * |
| *JAVA, que além de sua versão interpretada hoje existente em várias páginas Web, terá uma versão compilada que visa otimizar a linguagem C.
| | <br> |
|
| |
|
| = Programação estruturada = | | = Referências = |
| O princípio básico de programação estruturada é que um programa é composto por blocos elementares de código que se interligam através de três mecanismos básicos, que são: Seqüência , Seleção e iteracao.
| | <br> |
| Cada uma destas construções tem um ponto de início (o topo do bloco) e um ponto de término (o fim do bloco) de execução.
| |
| *Seqüência - determina os PASSOS de processamento necessários para descrever qualquer programa, uma tarefa é executada logo após a outra.
| |
| *Seleção - seleciona o fluxo de execução do processamento baseado em TESTES LÓGICOS.
| |
| Há duas formas básicas de condição:
| |
| - A primeira forma é a construção ''IF-ELSE'', que funciona da seguinte forma "se a condição lógica x for verdadeira, faça a Tarefa a; senão (se a condição x for falsa), faça a Tarefa b."
| |
| - A outra forma de seleção define condições que podem ser avaliadas para determinar o fluxo de execução. Esta construção, ''SWITCH'', permite representar fluxos da forma "se a variável y tem o valor 1, faça a Tarefa a; se y tem o valor 2, faça a Tarefa b; se tem o valor 0, faça a Tarefa c; para qualquer outro valor, faça Tarefa d."
| |
| *Iteração - permite a execução REPETITIVA de trechos do programa. Na forma básica de repetição, ''WHILE'', uma condição lógica é verificada. Caso seja verdadeira, o bloco de tarefas associado ao comando é executado. A condição é então reavaliada; enquanto for verdadeira, a tarefa é repetidamente executada.
| |
|
| |
|
| = Referências =
| | * |
| http://www.reocities.com/sfdsilva/trabalhos/informatica/linguagem3.htm
| | <br> |
| http://www.hardware.com.br/dicas/iniciando-mundo-programacao.html
| |
| http://www.cos.ufrj.br/~sergio/ApostilaPascal.pdf
| |
| http://www.infoescola.com/engenharia-de-software/linguagem-de-programacao-de-alto-nivel/
| |
| http://www.criarweb.com/artigos/685.php
| |
| http://fabrica.ms.senac.br/2013/04/programacao-estruturada-versus-programacao-orientada-a-objetos/
| |
| http://www.fisica.ufjf.br/~sjfsato/fiscomp1/node23.html
| |
| http://o-que-significa.blogspot.com.br/2009/07/linguagem-procedural.html#.Un-IA_mkqYg
| |
| http://gpsianasoraia.wikispaces.com/Linguagens+Procedimentais
| |