UNISINOS
ROTEIRO
Histrico
Busca por uma linguagem de propsito geral que permitisse ao programador explorar melhor os recursos da mquina (filosofia da linguagem BCPL)
Histrico
1979: linguagem B (Tompson) Simplificao da linguagem BCPL. Primeira verso do sistema UNIX
B + BCPL: generalista demais, pouco prtica, sem tipo de dados C: propsito geral, facilidades para acessar todos os recursos da mquina, sem perder as caractersticas de uma linguagem de alto nvel
Caractersticas
Conjunto bsico de tipos elementares de dados (int, char, float, double) Hierarquia de tipos de dados derivados criados com apontadores: arranjos, estruturas, unies, funes
Instrues fundamentais para programao estruturada: tomada de deciso, laos de controle e seleo
Caractersticas
Caractersticas
NO possui verificaes no que se refere aos tipos de dados e ndices de arrays (responsabilidade do programador)
Vantagens
Permite manipular bits, bytes e endereos de memria do computador. O programador pode acessar diretamente as funes de E/S
Linguagens de Programao
Alto nvel
ADA BASIC COBOL FORTRAN PASCAL
Compilao x Interpretao
Refere-se maneira como o programa executado Programas sofisticados que operam sobre o cdigo-fonte do programa. Cdigo-fonte o texto do programa que voc escreve.
.CPP (fonte) .OBJ (cdigo-objeto, cod. mquina, binrio) .EXE (aps link)
Interpretao x Compilao
Interpretador
L o cdigo-fonte do programa uma linha por vez e executa as instrues contidas nessa linha. NO cria cdigoobjeto Ex.: BASIC (geral)
Compilador
L o programa inteiro e converte-o em cdigo-objeto, que consiste em uma traduo do cdigofonte em uma forma que pode ser diretamente executada pelo computador Ex.: C
Interpretao x Compilao
Programas compilados so executados mais rapidamente Porm, o processo de compilao em si leva muito mais tempo Os compiladores protegem o cdigo-fonte contra roubo e alteraes no autorizadas (o cdigo compilado no tem semelhana com o cdigo-fonte)
Interpretao x Compilao
TEMPO DE COMPILAO: refere-se aos eventos que ocorrem durante o processo de compilao (erros de sintaxe). TEMPO DE PROCESSAMENTO: refere-se aos eventos que ocorrem enquanto o programa est sendo executado (raiz quadrada de nmero negativo)
Compilao x Interpretao
BASIC C FORTRAN ALGOL PASCAL CLIPPER
Uma funo bem escrita geralmente NO maior do que uma pgina O uso de constantes e nomes significativos aconselhado Usar identao (recuos) para maior clareza do cdigo-fonte