Baixe o app para aproveitar ainda mais
Prévia do material em texto
UNIVERSIDADE FEDERAL RURAL DA AMAZÔNIA DECÍOLA FERNANDES DE SOUSA deciola@yahoo.com.br ARQUITETURA DE COMPUTADORES I LINGUAGENS DE PROGRAMAÇÃO INTRODUÇÃO A linguagem de programação é a representação do algoritmo. A linguagem de máquina é complicada e difícil; Começou-se a utilizar abreviações semelhantes ao inglês para representar as operações; Exemplo: Linguagem Assembley. LINGUAGEM ASSEMBLY O programa escrito em Assembly não é executado diretamente. Porque o hardware não entende símbolos; Há necessidade de um programa para converter da linguagem Assembly para a linguagem de máquina. TRADUTOR. TRADUTOR O que é um programa TRADUTOR? Tradução do quê? Linguagem-fonte Linguagem-objeto TRADUTOR Este programa denomina-se MONTADOR ou ASSEMBLER O que faz o MONTADOR? LINGUAGEM DE MONTAGEM O que é? É mais fácil que a linguagem de máquina Cada declaração produz uma instrução de máquina no processo de montagem LINGUAGEM DE MONTAGEM O programa em linguagem Assembly roda em qualquer máquina? Tudo que pode ser feito na linguagem de máquina pode ser feito na linguagem de montagem A programação é difícil; Demorada; LINGUAGEM DE MONTAGEM EXEMPLOS: Rotinas de BIOS (System Input/Output Basic) Código em telefone celular Tratadores de interrupções Exceções de baixo nível. LINGUAGEM DE MONTAGEM MOV EAX, I ADD EAX, J MOV N, EAX O que faz? N=I+J COMANDOS Denominados pseudo-instruções; Ou diretivas de assembler; É exclusivo para os seres humanos; Não tem efeito sobre o processo de montagem; PSEUDO-INSTRUÇÕES SEGMENT inicia um novo segmento; ENDS encerram segmentos; IF inicia montagem condicional; ELSE inicia montagem condicional se condição IF for falsa ENDIF termina montagem condicional; MACRO Significa “pedaço de texto”; É quando o programador precisa repetir sequencias de instruções; E chamar quando for necessária; É uma solução fácil e eficiente; MACRO x PROCEDIMENTO ÍTEM MACRO PROCEDIMENTO Quandoa chamada é feita? montagem Execução do programa Éinserido no programa objeto? sim não A instrução de chamada é inserida no programa objeto e executada mais tarde? não sim Deve ser usada um instrução de retorno? não Sim Quantas cópias do corpo aparecem no programa-objeto Uma por chamada Uma EXERCÍCIO Crie dois programas em Assembly para calcular as seguintes equações a)X = A + (B * (C – A) + (D – E/B) * D) b) Y = (A + B * (C – D * (E / (B – F)) + B) * E) X = A + (B * (C – A) + (D – E/B) * D) SUB C, A ; C -A MPY C,B ; B * (C – A) DIV E,B ; E/B MOV X,D ; salva D em X SUB D,E ; D – E/B MPY X,D ; (D – E/B) * D ADD X,C ; (B * (C – A) + (D – E/B) * D) ADD X,A ; A + (B * (C – A) + (D – E/B) * D) (A + B * (C – D * (E / (B – F)) + B) * E) MOV Y, B ; salva B em Y SUB B, F ; B-F MOV F, E ; salva E em F DIV E,B ; E / (B – F) MPY D,E ; D * (E / (B – F)) ADD D,Y ; D * (E / (B – F)) + B SUB C,Y ; C – D * (E / (B – F)) + B MYP Y,C ; B * (C – D * (E / (B – F)) + B) * E ADD Y,A TIPOS DE LINGUAGENS Linguagem Estruturada C e PASCAL. Linguagem orientada a objetos C++ e JAVA. EVOLUÇÃO 1954 a 1957 => FORTRAN; (FORmula TRANslator) da IBM 1959 =>COBOL (COmmon Business Oriented Language); EVOLUÇÃO 1960 => Programação estruturada; Uma abordagem disciplinada para escrever programas; 1965 => A linguagem BASIC foi desenvolvida 1971 => PASCAL; Projetada quase na mesma época do C. EVOLUÇÃO 1971; Desenvolvimento da linguagem de programação PASCAL; Projetada quase na mesma época do C. Foi criada pelo professor Nicklaus Wirth e foi projetada para utilização acadêmica. EVOLUÇÃO 1984-1995 => Orientada a Objetos; É a principal metodologia de programação; O paradigma orientado a objetos tem como base a definição de estruturas que possam ser reutilizadas. Os objetos são descritos através de classes, que são compostas por métodos e estados.
Compartilhar