Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Programação Aplicada Aula 02: Conceitos e tipos de linguagens Luiz Silveira 2009.1 1 Projeto lógico na construção de programas • Um programa é para o computador um conjunto de instruções de máquina armazenas na memória • Normalmente essas instruções são geradas indiretamente, via arquivo texto em código de montagem (assembly) que são instruções mnemônicas mais fáceis que seqüências de zeros e uns 2 Projeto lógico na construção de programas Idéias Projeto Lógico Programa na linguagem X Compilador para a linguagem X Programa Final Código executável de máquina 3 Projeto lógico na construção de programas • Um programa é iniciado pela idéias que se tem a respeito do problema a ser resolvido • Seguida pelo planejamento feito no projeto lógico • As etapas a seguir dependem da linguagem de programação a ser utilizada, a idéia é traduzir o projeto lógico para essa linguagem • O programa na linguagem X é submetido a um compilador que é responsável por traduzir as instruções para a linguagem do processador destino 4 Projeto lógico na construção de programas • Abstração – É o ato de separar mentalmente um ou mais elementos de uma totalidade complexa (coisa, representação, fato), os quais só mentalmente podem subsistir fora dessa totalidade. (cf.: Aurélio) • O projeto lógico representa o programa em seu nível mais alto de abstração – Utiliza gráficos (fluxograma), ou textos (Portugol) independente de uma ling. programação 5 Projeto lógico na construção de programas • Vantagens – Os fluxogramas e pseudocódigos podem ser reutilizados para definir programas que poderão ser implementados depois em qualquer ling. de programação – Fáceis de aprender e mais fáceis de testar e verificar – Com um projeto lógico verificado e testado, tornam-se mínimas as chances de escrever um programa com erros em um ling. programação 6 Linguagens • • • • Linguagens de Máquina Linguagens simbólicas (mnemônicos) Linguagens de alto nível Exemplo – Soma das horas extras a pagar ao salário base, armazenando o resultado em pagamento bruto. 7 Linguagens • Linguagens de Máquina +1300042774 +1400593419 +1200274027 • Linguagens simbólicas LOAD ADD STORE BASEPAY OVERPAY GROSSPAY • Linguagens de alto nível (C, C++, Java) grossPay = basePay + overTimePay 8 Referências – Harry Farrer, Christiano Gonçalves Becker, Eduardo Chaves Faria, Helton Fábio de Matos, Marcos Augusto dos Santos e Miriam Lourenço Maia, “Algoritmos Estruturados", , editora Guanabara Koogan. – Marco A. F. Souza et al. “Algoritmos e lógica de programação”. Thompson, 2005. – Harvey M. Deitel. “Java – Como programar”. Prentice Hall, 2006. 9