9. Software de Sistema - Montadores (capítulo 9 do livro texto)

Tamanho: px
Começar a partir da página:

Download "9. Software de Sistema - Montadores (capítulo 9 do livro texto)"

Transcrição

1 9. Software de Sistema - Montadores (capítulo 9 do livro texto) Compiladores Programas de Aplicação Depuradores Usuário Processador de Macro Montador Programas Utilitários Ligadores Carregadores Sistema Operacional (Gerenciador de Processador, Memória, E/S, etc) Software Aplicativo Software de Sistema Microprogramas Circuitos Físicos Hardware DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 459

2 Software de Sistema cont. Software de Sistema é um conjunto de programas que define a maneira como os diversos elementos do hardware devem operar de modo a resolver os problemas dos usuários de forma simples e eficiente. SISTEMA COMPUTACIONAL = HARDWARE + SOFTWARE DE SISTEMA DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 460

3 Software de Sistema cont. Sem um software de sistema os usuários seriam responsáveis pelo controle direto de todas as operações executadas pelos elementos de hardware. os programas seriam escritos em linguagem de máquina; o programador seria responsável pelo carregamento, na memória, do programa a ser executado; não seria fácil utilizar os mecanismos de entrada e saída, exigindo-se conhecimento das peculiaridades de cada periférico e fazendo com que o esforço de programação fosse desviado do problema a ser resolvido; o programador seria responsável pelo gerenciamento do uso da memória para garantir a completa execução de um programa; em caso de sistemas com múltiplos usuários, o gerenciamento dos recursos existentes e a sincronização entre os diversos programas seriam extremamente complexos; etc. DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 461

4 9.1 Montadores (Assemblers) Um Montador é um programa cujos dados de entrada são sequências de caracteres que constituem o programa em Linguagem Simbólica, de Montagem ou "Assembly", e cujo resultado é um conjunto de palavras de máquina (sequências de bits) que constituem o programa em linguagem de máquina. O programa gerado, em linguagem de máquina, pode ser carregado na memória e executado ("load and go"), ou ser a entrada de outro programa, o Carregador, que após algum processamento para adequar os endereços ao bloco de memória disponível, carrega-o na memória para ser executado. DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 462

5 Montadores (Assemblers) cont. Esquema de funcionamento de um Montador típico Programa em linguagem de montagem ( Assembly ) MONTADOR Programa em linguagem de máquina tabelas DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 463

6 9.2 Linguagem de Montagem L. Assembly FORMATO GENÉRICO DE INSTRUÇÃO <RÓTULO> <CÓDIGO DE OPERAÇÃO> <OPERANDOS/MODIFICADORES> <COMENTÁRIOS> RÓTULO - composto de variáveis alfanuméricas, iniciando com letras, identifica endereços onde são armazenados instruções e dados; CÓDIGO DE OPERAÇÃO - conjunto de letras que formam mnemônicos para as instruções; OPERANDOS - identificam variáveis, pelos rótulos, ou registradores da UCP; MODIFICADORES - identificam modos de endereçamento; COMENTÁRIOS - descrevem o programa. DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 464

7 Linguagem de Montagem cont. Exemplo ROT MOVE R1,R2 ; armazena o conteúdo do registrador R1 em R2 DELIMITADORES Os campos da instrução em linguagem simbólica são separados por delimitadores. Novamente, estes delimitadores são definidos pelo projetista do MONTADOR. Exemplos de delimitadores espaço - entre campos - separa o rótulo ; - separa o comentário, - separa operandos DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 465

8 Linguagem de Montagem cont. Exemplos de Instruções Assembly Máquina de 1 endereço LDA S1 ; load S1 em Acc ou Acc (S1) ADD S2 ; Acc (Acc) + (S2) STORE R ; store R ou R (Acc) Exemplo de programa de Saída de dado (isolada) LOOP IN RS ; leitura do registrador RS TSTBIT 2 ; bit 2 de RS=1? JNZ LOOP ; loop de espera ou saída de dado? LDA dado ; Acc (dado) OUT RD ; porta RD (Acc) RS EQU ; porta de status da interface RD EQU ; porta de dados (saída) DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 466

9 Linguagem de Montagem cont. Exemplos de Instruções Assembly cont. Máquina de 2 endereços MOVE S1, R ; R (S1) ADD S2, R ; R (R) + (S2) Exemplo de programação de Interface (E/S mapeada) PROG MOVE #10, RC ; RC 10 RC EQU 1000A ; porta de controle da interface DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 467

10 Linguagem de Montagem cont. Exemplos de Pseudo-Instruções Pseudo-instruções facilitam a programação. São diretrizes para os programas montadores, não gerando código executável. DC / DW / DB - atribui a uma posição da memória um valor (dado); CINCO DW 5 ; a posição de memória referenciada por CINCO recebe o valor 5 DS - define área alocada em quantidade de palavras/bytes AREA DS 20 MOVE #3,AREA+5 ; reserva 20 posições ; acesso à área especificada EQU - define rótulo ABC EQU 1028 ; o rótulo ABC equivale à posição de memória 1028 DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 468

11 Linguagem de Montagem cont. Exemplos de Pseudo-Instruções cont. ORG - define origem ORG 1000 ; o que segue (dado ou instrução) estará na posição 1000 ADR - define que a posição contém o endereço do rótulo especificado X1 DW 12 AX1 ADR X1 ; a posição AX1 contém o endereço X1 END - define fim de programa Exemplo... ORG 5000 X1 DW 12 AX1 ADR X1 ; conteúdo de AX1 é o end. de X1 DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 469

12 9.3 Tarefas de um Montador Para traduzir o programa em linguagem simbólica para um programa em linguagem de máquina, o Montador deve a. substituir os mnemônicos da instrução e modificadores de endereço pelos equivalentes binários; b. determinar posições de memória, relativas ao programa, para os endereços simbólicos (rótulos); c. substituir todas as referências a um dado endereço simbólico pelo endereço binário correspondente. Para determinar posições de memória para os endereços simbólicos (b), o montador utiliza a informação dada pelo programador nas pseudoinstruções; estas não são traduzidas para Linguagem de Máquina, servindo somente para orientar o montador na geração do programa em linguagem de máquina. DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 470

13 Tarefas de um Montador-cont. exemplo de tradução por um montador (palavra de 16 bits) Motorola N comando n Instrução A DW 10 B DW 20 C DS 7 MOVE A,D1 LOOP ADD B, D1 MOVE D1, C END End. Relativo Código Objeto DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 471

14 Tarefas de um Montador-cont. exemplo de tradução por um montador (palavra de 16 bits) Motorola N comando Instrução End. Relativo Código Objeto byte 0 A DW , 1 1 B DW , 3 2 C DS modo Abs. - Reg. 7 x 2 bytes MOVE A,D end.a 4 LOOP ADD B, D end.b 5 MOVE D1, C end.c n END DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 472

15 Código de máquina (68000) ( bytes Na transparência 472 endereços 18 a 21 (em end. 18 size op.destino op.fonte 0 0 x x y y y z z z y y y z z z word= MOVE A, D modo 000 end. 20 seguido do valor do rótulo A (seu endereço) DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 473

16 9.4 Estruturas de dados no processo de montagem T S Tabela de Símbolos P F Programa Fonte Montador (ASM) P L M Programa em Linguagem de Máquina T I M Tabela de Instruções de Máquina T P I Tabela de Pseudo-Instruções DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 474

17 Estruturas de dados no processo de montagem cont. Tabela de Instruções de Máquina - TIM TIM associa o mnemônico de uma instrução com a instrução de máquina em binário a tabela TIM a seguir - pode possuir vários campos com informações relevantes. O número de campos que compõe a tabela TIM depende de características específicas do processador e da sintaxe da linguagem simbólica. Dois campos estão sempre presentes na tabela TIM MNEMÔNICO - onde estão os mnemônicos das instruções, definidos pela sintaxe da linguagem simbólica. CÓDIGO DE OPERAÇÃO - onde estão os códigos de operação das instruções de máquina. Outros campos podem completar a informação COMPRIMENTO DA INSTRUÇÃO (em bytes) - contém o comprimento da instrução. ROTINA DE TRATAMENTO DE OPERANDOS - onde estão relacionadas as rotinas que o montador deve ativar para gerar o endereço dos operandos, quando estes são expressões ou dependem dos modos de endereçamento. DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 475

18 Estruturas de dados no processo de montagem cont. Tabela de Instruções de Máquina TIM cont. Exemplo de tabela TIM - TABELA DE INSTRUÇÕES DE MÁQUINA Mnemônico Código de Operação Comprimento (bytes) Rotina de Tratamento de operandos MOVE 00xx?????????????? 2 a 6 RMOV RTS RRTS 00=byte; 10=long; 11=word DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 476

19 Estruturas de dados no processo de montagem cont. Tabela de Pseudo-Instruções TPI relaciona o mnemônico da pseudoinstrução com a rotina que o montador deve ativar para processar a pseudoinstrução a tabela TPI pode possuir vários campos com informações relevantes. Dois campos estão sempre presentes na tabela TPI MNEMÔNICO - onde estão os mnemônicos das pseudoinstruções, definidos pela sintaxe da linguagem simbólica. ROTINA DE TRATAMENTO DE OPERANDOS - onde estão relacionadas as rotinas que o montador deve ativar para processar a pseudoinstrução. Outros campos podem completar a informação, como COMPRIMENTO DA PSEUDOINSTRUÇÃO - contém o número de bytes ou palavras que deve ser reservado para pseudoinstruções como em DB (Define Byte) ou DW (Define Word). DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 477

20 Estruturas de dados no processo de montagem cont. Tabela de Pseudo-Instruções TPI cont. Exemplo de tabela TPI Tabela de Pseudoinstruções Mnemônico Comprimento (bytes) Rotina de Tratamento ORG DW DC.B DC.W DC.L RORG RDW DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 478

21 Estruturas de dados no processo de montagem cont. Tabela de Símbolos - TS A Tabela de Símbolos é construída durante a montagem e relaciona cada símbolo (ou rótulo) definido no código fonte com um valor em representação binária do seu endereço de memória. Exemplo de tabela TS Tabela de Símbolos (para o exemplo da transparência 472) Símbolo A B C LOOP Valor (em decimal) DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 479

22 9.5 O processo de montagem Para realizar a tradução, os Montadores são geralmente implementados como Montadores de dois Passos. Os dois Passos significam que o Montador deverá ler o programa fonte duas vezes. Existem Montadores de 1 Passo, onde o programa fonte é lido uma única vez; porém, este fato implica em restrições no programa fonte (ver Exercícios 3, 5 e 6 do livro texto). Para o Montador de dois Passos. no primeiro passo o Montador lê o código fonte e determina os endereços para as referências simbólicas, construindo a Tabela de Símbolos.. no segundo passo o código fonte é lido novamente e os mnemônicos das instruções e referências simbólicas são substituídos por códigos de máquina. DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 480

23 O processo de montagem cont. As tarefas associadas aos dois passos são PASSO 1 - Definir símbolos (rótulos) processar pseudoinstruções, utilizando a Tabela de Pseudoinstruções; determinar o comprimento da instrução de máquina, de acordo com a Tabela de Instruções de Máquina; atualizar o contador de posições CP, de acordo com o comprimento de cada instrução ou pseudoinstrução; guardar os valores dos símbolos (endereço equivalente) na Tabela de Símbolos. PASSO 2 - Gerar o programa em linguagem de máquina substituir símbolos por valores indicados na Tabela de Símbolos; gerar instruções de máquina; gerar dados (constantes definidas). DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 481

24 O processo de montagem cont. Passo 1 processar símbolos CP 0 lê ERRO não encontrou busca TPI busca TIM encontrou L comprimento da instrução encontrou não encontrou DW DS L comprimento dos dados EQU L 0 ORG END PASSO 2 CP valor guardar rótulo = CP na TS CP CP + L DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 482

25 O processo de montagem cont. CP 0 lê encontrou busca TPI DW não encontrou calcula / insere busca TIM constante encontrou L comprimento da instrução processa C.O. processa operandos insere no PLM CP CP + L DS L comprimento dos dados Passo 2 gerar códigos ORG EQU END CP valor FIM No Passo 2 o contador de posições CP é zerado e o programa fonte é lido novamente. A cada instrução lida é feita a busca nas tabelas TPI e TIM. No Passo 2 não é necessário prover um tratamento de erro quando a instrução não pertencer às tabelas TIM e TPI; o tratamento de erro é ativado no Passo 1 e o Passo 2 não é executado. DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 483

26 O processo de montagem Fluxo de Dados As estruturas de dados manipuladas nos passos 1 e 2 são Programa Montador (ASM); Contador de posições (CP); Tabela de Instruções de Máquina (TIM); Tabela de Pseudoinstruções (TPI); Tabela de Símbolos (TS); Programa em linguagem de Máquina (PLM). ASM PLM CP PASSO 1 PF PASSO 2 CP TIM TPI TS DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 484

27 9.6 Exemplo ORG 0100H START MOVE DADO,R0 VOLTA DCR R0 JNZ VOLTA MVI #11H,R1 HLT DADO DW 20H END Para ilustrar as diferenças entre processadores, neste exemplo, diferentemente do apresentado na transparência 472 temos palavra de 8 bits (1 byte) bem como outros códigos de operação e comprimentos de instrução. DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 485

28 Exemplo cont. TIM - TABELA DE INSTRUÇÕES DE MÁQUINA Mnemônico (*) Código de Operação (hexadecimal) Comprimento (bytes) Rotina de Tratamento de operandos MOVE R RMOV MVI R RMVI HLT 00 1 RHLT JNZ 60 3 RJMP DCR R RDCR (*) só está representada a parte que gera o C.O. DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 486

29 Exemplo cont. TPI - TABELA DE PSEUDOINSTRUÇÕES Mnemônico ORG END DS DW Rotina de Tratamento RORG REND RDS RDW DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 487

30 Exemplo cont. No Passo 1 é gerada a tabela TS a partir do processamento do comprimento das instruções conforme mostrado a seguir. Endereço (CP) 0100 START MOVE DADO,R VOLTA DCR R JNZ VOLTA MVI #11H,R HLT 010A DADO DW 20H DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 488

31 Exemplo cont. No Passo 1 é gerada a tabela TS a partir do processamento do comprimento das instruções conforme mostrado a seguir. Endereço (CP) 0100 START MOVE DADO,R VOLTA DCR R JNZ VOLTA MVI #11H,R HLT 010A DADO DW 20H Tabela de Símbolos Símbolo Valor START 0100 VOLTA DADO A DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 489

32 Exemplo cont. Seguindo o algoritmo descrito no Passo 2 e utilizando a tabela gerada no Passo 1, obtemos o seguinte PLM (devemos observar que os endereços dos operandos estão armazenados em 2 bytes, por exemplo nos endereços e ) Endereço PLM (em hexadecimal) A A 20 DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 490

33 9.7 Exercícios 1. Resolva os exercícios (1) a (6) do livro texto. DCA-FEEC-UNICAMP Introdução à Computação Digital Prof. Léo Pini Magalhães 491

Microcontrolador Assembly UTFPR / DAELN Microcontroladores 1 Prof. Gabriel Kovalhuk

Microcontrolador Assembly UTFPR / DAELN Microcontroladores 1 Prof. Gabriel Kovalhuk Assembly 8051 Num sistema microprocessado, geralmente, não existe um sistema operacional; O programa desenvolvido pelo programador deve cuidar tanto da lógica do programa, bem como da configuração e acesso

Leia mais

Linguagem de Montagem do NeanderX

Linguagem de Montagem do NeanderX Universidade Estácio de Sá Curso de Informática Arquitetura de Computadores Linguagem de Montagem do NeanderX 11.5.2006 Geração Programa Executável Linguagens de Programação As linguagens de programação

Leia mais

FORMATO DO PROGRAMA FONTE

FORMATO DO PROGRAMA FONTE FORMATO DO PROGRAMA FONTE As declarações do programa fonte são constituídas pelos seguintes campos: 1) Campo do Rótulo: o primeiro caractere deve ser alfabético

Leia mais

Conceitos básicos sobre computadores (continuação)

Conceitos básicos sobre computadores (continuação) SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Conceitos básicos sobre computadores (continuação) Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário O que é um computador e

Leia mais

NEANDERWIN. Algumas características do processador Neander são:

NEANDERWIN. Algumas características do processador Neander são: NEANDERWIN O NeanderWin é um simulador da máquina Neander, definida no livro do Raul F. Weber (UFRGS), Fundamentos de Arquitetura de Computadores, Ed. Sagra Luzzatto. A máquina original foi estendida aqui

Leia mais

Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES. Introdução. Geovane Griesang

Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES. Introdução. Geovane Griesang Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES Introdução geovanegriesang@unisc.br Processadores de linguagem Linguagens de programação são notações para se descrever

Leia mais

Compiladores. Introdução à Compiladores

Compiladores. Introdução à Compiladores Compiladores Introdução à Compiladores Cristiano Lehrer, M.Sc. Introdução (1/2) O meio mais eficaz de comunicação entre pessoas é a linguagem (língua ou idioma). Na programação de computadores, uma linguagem

Leia mais

Sistemas Operacionais

Sistemas Operacionais Visão geral de montadores, ligadores e carregadores 2 a edição Revisão: Fev/2003 Sistemas Operacionais Montadores, ligadores e carregadores Anexo A Como um programa é construído até ser executado? Montadores

Leia mais

Organização e Projeto de Computadores 3: Modo de Endereçamento, Sub-Rotina, Instruções de E/S, Interrupção

Organização e Projeto de Computadores 3: Modo de Endereçamento, Sub-Rotina, Instruções de E/S, Interrupção Organização e Projeto de Computadores 3: Modo de Endereçamento, Sub-Rotina, Instruções de E/S, Interrupção 1 Modo de Endereçamento Determina como o operando é obtido durante a execução de uma ins trução.

Leia mais

Primeiro Trabalho de POO Emulador para o Processador Winter

Primeiro Trabalho de POO Emulador para o Processador Winter Primeiro Trabalho de POO Emulador para o Processador Winter Prof. Pedro Carlos da Silva Lara Entrega: 21/10/2014 1 Informações Gerais Winter é um processador hipotético especificado com fim puramente acadêmico.

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Conjunto de Instruções Slide 1 Sumário Características de Instruções de Máquina Tipos de Operandos Tipos de Operações Linguagem de Montagem Slide 2 Características

Leia mais

Linguagens de Programação Classificação

Linguagens de Programação Classificação Classificação Classificação A proximidade que a linguagem de programação tem com a humana determina sua classe (o nível): Linguagem de máquina (primeira geração) Linguagem assembly - de montagem (segunda

Leia mais

Microprocessadores CPU. Unidade de Controle. Prof. Henrique

Microprocessadores CPU. Unidade de Controle. Prof. Henrique Microprocessadores CPU Unidade de Controle Prof. Henrique Roteiro Registradores; Unidade de Controle Níveis de Complexidade Introdução Um sistema microprocessado conta com diversos dispositivos para um

Leia mais

Porque usar um montador? Formato de uma linha de código fonte:

Porque usar um montador? Formato de uma linha de código fonte: Instruções de uso do montador DAEDALUS (baseadas em texto extraído da monografia apresentada como trabalho de diplomação no curso de Bacharelado em Ciência da Computação por Luís Ricardo Schwengber, sob

Leia mais

Introdução à Computação: Máquinas Multiníveis

Introdução à Computação: Máquinas Multiníveis Introdução à Computação: Máquinas Multiníveis Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

Leia mais

Utilização do montador Daedalus. O montador e os simuladores Formatos de instruções

Utilização do montador Daedalus. O montador e os simuladores Formatos de instruções Utilização do montador Daedalus O montador e os simuladores Formatos de instruções 1 O montador Daedulus! Desenvolvido para os simuladores Ahmes, Ramses e Cesar! Simuladores possuem arquiteturas distintas!

Leia mais

Unidade de Controle. UC - Introdução

Unidade de Controle. UC - Introdução Unidade de Controle Prof. Alexandre Beletti (Cap. 3 Weber, Cap.8 Monteiro, Cap. 10,11 Stallings) UC - Introdução Para gerenciar o fluxo interno de dados e o instante em que ocorrem as transferências entre

Leia mais

SSC510 Arquitetura de Computadores 1ª AULA

SSC510 Arquitetura de Computadores 1ª AULA SSC510 Arquitetura de Computadores 1ª AULA REVISÃO DE ORGANIZAÇÃO DE COMPUTADORES Arquitetura X Organização Arquitetura - Atributos de um Sistema Computacional como visto pelo programador, isto é a estrutura

Leia mais

PROGRAMAÇÃO I. Introdução

PROGRAMAÇÃO I. Introdução PROGRAMAÇÃO I Introdução Introdução 2 Princípios da Solução de Problemas Problema 1 Fase de Resolução do Problema Solução na forma de Algoritmo Solução como um programa de computador 2 Fase de Implementação

Leia mais

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2)

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2) Tecnólogo em Análise e Desenvolvimento de Sistemas Sistemas Operacionais (SOP A2) Conceitos de Hardware e Software Referências: Arquitetura de Sistemas Operacionais. F. B. Machado, L. P. Maia. Editora

Leia mais

Programação de Computadores:

Programação de Computadores: Instituto de C Programação de Computadores: Introdução a Linguagens de Programação Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Seis Camadas Problema

Leia mais

Sistema Computacional

Sistema Computacional Algoritmos e Lógica de Programação Conceitos Básicos Abstração Reinaldo Gomes reinaldo@cefet-al.br O que é um? Integração de componentes atuando como uma entidade, com o propósito de processar dados, i.e.

Leia mais

Conjunto de Instruções e Modelos de Arquiteturas

Conjunto de Instruções e Modelos de Arquiteturas Departamento de Engenharia Elétrica e de Computação EESC-USP SEL-0415 Introdução à Organização de Computadores Conjunto de Instruções e Modelos de Arquiteturas Aula 7 Prof. Marcelo Andrade da Costa Vieira

Leia mais

ORGANIZAÇÃO DE COMPUTADORES

ORGANIZAÇÃO DE COMPUTADORES ORGANIZAÇÃO DE COMPUTADORES AULA 03 PROFº RITIELLE SOUZA DISTRIBUIÇÃO LÓGICA DISTRIBUIÇÃO LÓGICA Arquitetura de Von Neumann Uma unidade central de processamento recebe informações através de uma unidade

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Jordana Sarmenghi Salamon jssalamon@inf.ufes.br jordanasalamon@gmail.com http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda

Leia mais

Procedimentos. Sistemas de Computação

Procedimentos. Sistemas de Computação Procedimentos Chamada de Procedimentos Utilização de procedimentos: Facilitar entendimento do programa Reutilização de código Passos necessários para execução de um procedimento: Os parâmetros a serem

Leia mais

AULA 03: FUNCIONAMENTO DE UM COMPUTADOR

AULA 03: FUNCIONAMENTO DE UM COMPUTADOR ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 03: FUNCIONAMENTO DE UM COMPUTADOR Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação O QUE É UM COMPUTADOR?

Leia mais

MATA49 Programação de Software Básico

MATA49 Programação de Software Básico MATA49 Programação de Software Básico Leandro Andrade leandrojsadcc.ufba.br PROF. LEANDRO ANDRADE 1 Introdução a linguagem de montagem com Nasm PROF. LEANDRO ANDRADE 2 Sintaxe básica Não é sensível

Leia mais

Organização e Arquitetura de Computadores INTRODUÇÃO

Organização e Arquitetura de Computadores INTRODUÇÃO Organização e Arquitetura de Computadores INTRODUÇÃO A Arquitetura de Computadores trata do comportamento funcional de um sistema computacional, do ponto de vista do programador (ex. tamanho de um tipo

Leia mais

1: 2: 2, [1] [2] 0x x001f8021 $16,$0,$31 13 [3] 0x x

1: 2: 2, [1] [2] 0x x001f8021 $16,$0,$31 13 [3] 0x x Prova P1 Disciplina: Organização de Computadores Professor: Ney Laert Vilar Calazans Aluno: 14/setembro/2012 Lista de associação de números e mnemônicos para os registradores do MIPS Número (Decimal) Nome

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais CAP 2: Conceitos de Hardware e Software Prof. MSc. Diego R. Moraes diegorm@anhanguera.com Download de todo conteúdo da disciplina https://sites.google.com/site/diegorafaelmoraes/downloads

Leia mais

Conjunto de Instruções e Modelos de Arquiteturas

Conjunto de Instruções e Modelos de Arquiteturas Departamento de Engenharia Elétrica e de Computação EESC-USP SEL-0415 Introdução à Organização de Computadores Conjunto de Instruções e Modelos de Arquiteturas Aula 7 Prof. Marcelo Andrade da Costa Vieira

Leia mais

sumário 1 bases numéricas 1 2 sistemas de numeração em computação introdução representação de números... 3

sumário 1 bases numéricas 1 2 sistemas de numeração em computação introdução representação de números... 3 sumário 1 bases numéricas 1 1.1 introdução... 2 1.2 representação de números... 3 1.3 transformação entre bases... 4 1.3.1 método polinomial...4 1.3.2 método de subtrações...5 1.3.3 método das divisões...6

Leia mais

Conversões de Linguagens: Tradução, Montagem, Compilação, Ligação e Interpretação

Conversões de Linguagens: Tradução, Montagem, Compilação, Ligação e Interpretação Conversões de Linguagens: Tradução, Montagem, Compilação, Ligação e Interpretação Para executar uma tarefa qualquer, um computador precisa receber instruções precisas sobre o que fazer. Uma seqüência adequada

Leia mais

Linguagens de Programação

Linguagens de Programação Universidade Federal do Rio Grande do Norte Centro de Tecnologia Departamento de Computação e Automação Linguagens de Programação Professor Responsável: Luiz Affonso Henderson Guedes de Oliveira Prof.

Leia mais

Infraestrutura de Hardware. Funcionamento de um Computador

Infraestrutura de Hardware. Funcionamento de um Computador Infraestrutura de Hardware Funcionamento de um Computador Computador: Hardware + Software Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é

Leia mais

CONJUNTO DE INSTRUÇÕES

CONJUNTO DE INSTRUÇÕES CONJUNTO DE INSTRUÇÕES 1 CARACTERÍSTICAS DE INSTRUÇÕES DE MÁQUINA Quando um programador usa uma linguagem de alto-nível, como C, muito pouco da arquitetura da máquina é visível. O usuário que deseja programar

Leia mais

Introdução (Aula 2) Introdução Arquitetura de Hardware. Organização Estruturada de Computadores. Introdução Conceitos (2) Introdução Conceitos (1)

Introdução (Aula 2) Introdução Arquitetura de Hardware. Organização Estruturada de Computadores. Introdução Conceitos (2) Introdução Conceitos (1) Introdução Arquitetura de Hardware Introdução (Aula 2) Organização Estruturada de Computadores 01- Monitor 02- Placa-Mãe 03- Processador 04- Memória RAM 05- Placas de Rede, Som, Vídeo, Fax... 06- Fonte

Leia mais

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura Conjunto de Instruções e Modo de Endereçamento Ciclo de busca decodificação execução de instruções Programação de um processador Arquitetura de Von Neumann e Componentes Arquiteturas 4, 3, 2, 1 e 0 Tabela

Leia mais

Introdução. (Aula 2) Organização Estruturada de Computadores

Introdução. (Aula 2) Organização Estruturada de Computadores Introdução (Aula 2) Organização Estruturada de Computadores Introdução Arquitetura de Hardware 01- Monitor 02- Placa-Mãe 03- Processador 04- Memória RAM 05- Placas de Rede, Som, Vídeo, Fax... 06- Fonte

Leia mais

ção de Computadores I

ção de Computadores I Universidade Federal de Pelotas Instituto de Física e Matemática Departamento de Informática Bacharelado em Ciência da Computação Arquitetura e Organizaçã ção de Computadores I Aula 2 1. Projeto da Arquitetura

Leia mais

Introdução à Computação

Introdução à Computação UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Introdução à Computação Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa yandre@din.uem.br Histórico da Computação Prof. Yandre

Leia mais

Introdução à Computação

Introdução à Computação UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Introdução à Computação Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa yandre@din.uem.br Histórico da Computação Prof. Yandre

Leia mais

Introdução à Computação para Engenharia MAC2166 Prof. Dr. Paulo Miranda IME-USP. Aula 1 Introdução à Computação

Introdução à Computação para Engenharia MAC2166 Prof. Dr. Paulo Miranda IME-USP. Aula 1 Introdução à Computação Introdução à Computação para Engenharia MAC2166 Prof. Dr. Paulo Miranda IME-USP Aula 1 Introdução à Computação Eventos históricos: 1) Primeiro computador a válvulas, o Eletronic Numeric Integrator And

Leia mais

Programação de Computadores IV. Introdução a Linguagens de Programação Simone Martins SLIDES CEDIDOS POR BRUNO MARQUES 1

Programação de Computadores IV. Introdução a Linguagens de Programação Simone Martins SLIDES CEDIDOS POR BRUNO MARQUES 1 Programação de Computadores IV Introdução a Linguagens de Programação Simone Martins simone@ic.uff.br SLIDES CEDIDOS POR BRUNO MARQUES 1 Arquitetura de programação 2 O Que é um Dado? Dado é o elemento

Leia mais

Compiladores. Geração de Código Objeto

Compiladores. Geração de Código Objeto Compiladores Geração de Código Objeto Cristiano Lehrer, M.Sc. Atividades do Compilador Arquivo de origem Arquivo de destino Análise Otimização Geração de Código Intermediário Geração de Código Final Síntese

Leia mais

Universidade Católica de Pelotas Bacharelado em Ciência da Computação Linguagens Formais e Autômatos TEXTO 6 Introdução à Compilação

Universidade Católica de Pelotas Bacharelado em Ciência da Computação Linguagens Formais e Autômatos TEXTO 6 Introdução à Compilação Universidade Católica de Pelotas Bacharelado em Ciência da Computação 364018 Linguagens Formais e Autômatos TEXTO 6 Introdução à Compilação Prof. Luiz A M Palazzo Maio de 2011 Um COMPILADOR é um programa

Leia mais

Introdução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Introdução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação Introdução à Programação Aula 02 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação QUAIS SÃO OS COMPONENTES BÁSICOS DO HW DE UM SISTEMA COMPUTACIONAL?

Leia mais

Sistemas Operacionais I

Sistemas Operacionais I Sistemas Operacionais I Revisão de conceitos Sistemas Operacionais I Dionisio Gava Junior Componentes básicos Componentes Básicos da Tecnologia da Informação Hardware CPU, Memória e Periféricos de E/S.

Leia mais

William Stallings Arquitetura e Organização de Computadores 8 a Edição

William Stallings Arquitetura e Organização de Computadores 8 a Edição William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 11 Conjuntos de instruções: Modos de endereçamento e formatos slide 1 Diagrama do endereçamento imediato Instrução Opcode

Leia mais

Dispositivos de Entrada e Saída

Dispositivos de Entrada e Saída Departamento de Ciência da Computação - UFF Dispositivos de Entrada e Saída Profa. Débora Christina Muchaluat Saade debora@midiacom.uff.br Problemas com Entrada e Saída ü Periféricos possuem características

Leia mais

II.1 Conceitos Fundamentais. Uma delas é programar o =>

II.1 Conceitos Fundamentais. Uma delas é programar o => II.1 Conceitos Fundamentais II.2 Gerações das Linguagens de Programação II.3 Linguagem de Programação II.4 Sistema Operacional II.5 Tradutores II.5.1 Estrutura de um tradutor II.5.1.1 Análise Léxica II.5.1.3

Leia mais

Prof. Sandro Wambier

Prof. Sandro Wambier Prof. Sandro Wambier São elementos da Arquitetura de um computador: conjunto de instruções de um processador, os modos de endereçamentos, o tipo e tamanho dos dados manipulados pelo processador, ex.: Intel

Leia mais

MODOS DE ENDEREÇAMENTO E CONJUNTO DE INSTRUÇÕES

MODOS DE ENDEREÇAMENTO E CONJUNTO DE INSTRUÇÕES MODOS DE ENDEREÇAMENTO E CONJUNTO DE INSTRUÇÕES Alexandre Lucas Chichosz Graduando em Engenharia da Computação, Faculdades Integradas de Três Lagoas FITL/AEMS Calwann de Souza Freire Graduando em Engenharia

Leia mais

INFORMÁTICA: Informação automática

INFORMÁTICA: Informação automática INTRODUÇÃO INFORMÁTICA: Informação automática Definição: é a ciência que estuda o tratamento automático e racional da informação (encarregada pelo estudo e desenvolvimento de máquinas e métodos para processar

Leia mais

MODOS DE ENDEREÇAMENTO E CONJUNTO DE INSTRUÇÕES

MODOS DE ENDEREÇAMENTO E CONJUNTO DE INSTRUÇÕES MODOS DE ENDEREÇAMENTO E CONJUNTO DE INSTRUÇÕES Alexandre Lucas Chichosz Discente do curso Engenharia da Computação Calwann de Souza Freire Discente do curso Engenharia da Computação Myke Albuquerque Pinto

Leia mais

PCS-2529 Introdução aos Processadores. Prof. Dr. Paulo Sérgio Cugnasca

PCS-2529 Introdução aos Processadores. Prof. Dr. Paulo Sérgio Cugnasca PCS-2529 Introdução aos Processadores Prof. Dr. Paulo Sérgio Cugnasca 1 2 Existem 4 esquemas diferentes de E/S possíveis, cada um se aplicando em uma determinada situação. E/S Programada. E/S Acionada

Leia mais

Nível da Linguagem de Montagem

Nível da Linguagem de Montagem Nível da Linguagem de Montagem (Aula 15) Linguagem de Montagem Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 2007/2 Introdução Tradutores Programas que convertem um programa

Leia mais

NEANDERWIN - Resumo operacional

NEANDERWIN - Resumo operacional NEANDERWIN - Resumo operacional Sumário Listagem geral das instruções... 2 NOP... 2 LDI imed... 2 STA ender... 2 LDA ender... 3 ADD ender... 3 SUB ender... 3 OR ender... 4 AND ender... 4 NOT... 4 JMP ender...

Leia mais

Linguagens de Programação

Linguagens de Programação Capítulo 4 Linguagens de Programação 4.0 Índice Capítulo 4 1 4.0 Índice 1 4.1 Programação de Computadores 2 4.2 Níveis de Linguagens de Programação 2 4.2.1 Linguagem de Máquina 2 4.2.2 Linguagem Hexadecimal

Leia mais

Prof. Adilson Gonzaga

Prof. Adilson Gonzaga Microprocessadores são Máquinas de Estado Seqüenciais Síncronas que operam mediante a execução de uma seqüência de códigos binários armazenados em memória. Prof. Adilson Gonzaga 1 As ordens ou comandos

Leia mais

Periféricos possuem características diferentes. Periféricos são mais lentos que UCP e Memória Necessita-se de módulos de Entrada/Saída

Periféricos possuem características diferentes. Periféricos são mais lentos que UCP e Memória Necessita-se de módulos de Entrada/Saída Periféricos possuem características diferentes Geram diferentes quantidades de dados Em velocidades diferentes Em formatos diferentes Periféricos são mais lentos que UCP e Memória Necessita-se de módulos

Leia mais

http://www.ic.uff.br/~debora/fac! 1 Periféricos possuem características diferentes Geram diferentes quantidades de dados Em velocidades diferentes Em formatos diferentes Periféricos são mais lentos que

Leia mais

UCP 8051 (parte 02) Professor Adão de Melo Neto

UCP 8051 (parte 02) Professor Adão de Melo Neto UCP 85 (parte 2) Professor Adão de Melo Neto Barramento de endereços UCP 85 É unidirecional (6 BITS), porque a informação flui apenas em uma direção, da CPU para a memória ou para os elementos de E/S.

Leia mais

SSC0112 Organização de Computadores Digitais I

SSC0112 Organização de Computadores Digitais I SSC0112 Organização de Computadores Digitais I 3ª Aula Visão Geral e Conceitos Básicos Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Copyright William Stallings & Adrian J Pullin Tradução, revisão e

Leia mais

Arquitetura de Computadores. Ciclo de Busca e Execução

Arquitetura de Computadores. Ciclo de Busca e Execução Arquitetura de Computadores Ciclo de Busca e Execução Ciclo de Busca e Execução Início Buscar a próxima instrução Interpretar a instrução Executar a instrução Término Funções realizadas pela UCP Funções

Leia mais

Introdução. Nível da Linguagem de Montagem. Linguagem de Montagem (2) Linguagem de Montagem (1) Linguagem de Montagem

Introdução. Nível da Linguagem de Montagem. Linguagem de Montagem (2) Linguagem de Montagem (1) Linguagem de Montagem Nível da Linguagem de Montagem (Aula 15) Linguagem de Montagem Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 2007/2 Introdução Tradutores Programas que convertem um programa

Leia mais

18/10/2010. Unidade de Controle Controle. UC Microprogramada

18/10/2010. Unidade de Controle Controle. UC Microprogramada Arquitetura de Computadores Unidade de Controle Controle Microprogramado Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO UC Microprogramada

Leia mais

Existem três categorias principais de linguagem de programação: linguagem de máquina, linguagens assembly e linguagens de alto nível.

Existem três categorias principais de linguagem de programação: linguagem de máquina, linguagens assembly e linguagens de alto nível. Aula 3 SOFTWARE (programas) Um programa (software) consiste em uma sequência de instruções escritas numa linguagem precisa chamada linguagem de programação. Estas instruções são traduzidas em um compilador,

Leia mais

CONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP)

CONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP) CONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP) 1 LINGUAGENS Constituída de seqüência de zeros (0) e uns (1) Cada instrução em ASSEMBLY constitui-se em um mnemônico (uma forma fácil de se lembra) de uma

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores Arquitetura e Organização de Computadores Linguagem de Montagem e Linguagem de Máquina Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Conceitos básicos Linguagem/código

Leia mais

Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior

Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior Meio pelo qual se pode indicar os passos que devem ser realizados pelo computador para resolver problemas; Através da linguagem,

Leia mais

OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO

OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO Prof. Msc. Carlos José Giudice dos Santos carlos@oficinadapesquisa.com.br www.oficinadapesquisa.com.br Compiladores e Interpretadores Compiladores

Leia mais

William Stallings Arquitetura e Organização de Computadores 8 a Edição

William Stallings Arquitetura e Organização de Computadores 8 a Edição William Stallings Arquitetura e Organização de Computadores 8 a Edição Capítulo 10 Conjuntos de instruções: Características e funções slide 1 O que é um conjunto de instruções? A coleção completa de instruções

Leia mais

Fundamentos de Arquiteturas de Computadores Turma :A1 Lista 3 Profa.: Simone Martins

Fundamentos de Arquiteturas de Computadores Turma :A1 Lista 3 Profa.: Simone Martins UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO Fundamentos de Arquiteturas de Computadores Turma :A Lista 3 Profa.: Simone Martins. A figura abaixo mostra

Leia mais

a) Calcule o valor médio de CPI apresentado na execução deste programa P, utilizando-se C1 sem e com otimização. Resposta:

a) Calcule o valor médio de CPI apresentado na execução deste programa P, utilizando-se C1 sem e com otimização. Resposta: UNIVERSIDADE FEDERAL FLUMINENSE INSTITUTO DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO Sistemas de Computação 2016.2 Profa.: Simone Martins Lista 1 - Gabarito 1. Um programa P foi compilado com

Leia mais

Infraestrutura de Hardware. Implementação Monociclo de um Processador Simples

Infraestrutura de Hardware. Implementação Monociclo de um Processador Simples Infraestrutura de Hardware Implementação Monociclo de um Processador Simples Componentes de um Computador Unid. Controle Controle Memória Registradores PC MAR IR AC Programa + Dados Instrução Endereço

Leia mais

Introdução à Computação MAC0110

Introdução à Computação MAC0110 Introdução à Computação MAC0110 Prof. Dr. Paulo Miranda IME-USP Aula 1 Introdução à Computação Eventos históricos: 1) Primeiro computador a válvulas, o Eletronic Numeric Integrator And Calculator (ENIAC).

Leia mais

Sâmia Rodrigues Gorayeb. Arquitetura de Computadores Linguagem de Máquina

Sâmia Rodrigues Gorayeb. Arquitetura de Computadores Linguagem de Máquina Sâmia Rodrigues Gorayeb Arquitetura de Computadores Linguagem de Máquina Arquitetura de Computadores Agenda: Linguagem de máquina 1. Introdução 2. Característica 3. Programas Compilados 4. Programas Interpretados

Leia mais

UNIDADE DE CONTROLE (IMPLEMENTAÇÃO POR HARDWARE) Adão de Melo Neto

UNIDADE DE CONTROLE (IMPLEMENTAÇÃO POR HARDWARE) Adão de Melo Neto UNIDADE DE CONTROLE (IMPLEMENTAÇÃO POR HARDWARE) Adão de Melo Neto 1 UNIDADE DE CONTROLE Técnicas de implementação da Unidade de Controle Implementação Microprograma Implementação por Hardware 3 UNIDADE

Leia mais

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA Prof. Msc. Tiago Alves de Oliveira Objetivos Conhecer o processador Compreender os registradores

Leia mais

Linguagens de Programação

Linguagens de Programação Linguagens de Programação 128 13 129 Linguagens de Programação Uma linguagem de programação é um vocabulário e um conjunto de regras gramaticais usadas para escrever programas de computador. Esses programas

Leia mais

Introdução ao Estudo dos Computadores

Introdução ao Estudo dos Computadores 1 Capítulo 1 Introdução ao Estudo dos Computadores A execução de instruções é um dos pontos centrais num sistema computacional. Vários aspectos na definição e implementação da arquitetura de um computador

Leia mais

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA Prof. Dr. Daniel Caetano 2012-2 Objetivos Conhecer o processador Compreender os registradores

Leia mais

Memória. Arquitetura de Von Neumann. Universidade do Vale do Rio dos Sinos Laboratório I Prof.ª Vera Alves 1 CPU. Unidade de controle ULA

Memória. Arquitetura de Von Neumann. Universidade do Vale do Rio dos Sinos Laboratório I Prof.ª Vera Alves 1 CPU. Unidade de controle ULA Universidade do Vale do Rio dos Sinos Laboratório I Prof.ª Vera Alves 1 Arquitetura de Von Neumann CPU Unidade de controle Unidade de entrada Unidade de saída ULA Von Neumann era um gênio. Falava muitos

Leia mais

Computador Cleópatra

Computador Cleópatra ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES Computador Cleópatra Interface Hardware e Software Alexandre Amory Edson Moreno 2 / 9 Nas Aulas Anteriores Vimos como descrever e implementar circuitos combinacionais

Leia mais

Programação Estruturada

Programação Estruturada Programação Estruturada Organização de um ambiente computacional Professores Emílio Francesquini e Carla Negri Lintzmayer 2018.Q3 Centro de Matemática, Computação e Cognição Universidade Federal do ABC

Leia mais

Compiladores. Motivação. Tradutores. Motivação. Tipos de Tradutores. Tipos de Tradutores

Compiladores. Motivação. Tradutores. Motivação. Tipos de Tradutores. Tipos de Tradutores Motivação Prof. Sérgio Faustino Compiladores Conhecimento das estruturas e algoritmos usados na implementação de linguagens: noções importantes sobre uso de memória, eficiência, etc. Aplicabilidade freqüente

Leia mais

Problemas com Entrada e Saída

Problemas com Entrada e Saída Problemas com Entrada e Saída Periféricos possuem características diferentes Geram diferentes quantidades de dados Em velocidades diferentes Em formatos diferentes Periféricos são mais lentos que UCP e

Leia mais

2.4 Processadores Micro-instruções Desvios Desvios Condicionais Instruções e Programação em Assembler

2.4 Processadores Micro-instruções Desvios Desvios Condicionais Instruções e Programação em Assembler Aula Expositiva 4 2.4 Processadores 2.4.1 Micro-instruções 2.4.2 Desvios 2.4.3 Desvios Condicionais 2.4.4 Instruções e Programação em Assembler DCC 001 Programação de Computadores 2 o Semestre de 2011

Leia mais

Classificação das linguagens de programação

Classificação das linguagens de programação Introdução Linguagem É um meio de comunicação entre pessoas. Faculdade de expressão audível e articulada do homem. Conjunto de sinais falados, escritos ou gesticulados de que se serve o homem para demonstrar

Leia mais

7. PROGRAMANDO O MICROCONTROLADOR. Microcontroladores - Prof: Demantova

7. PROGRAMANDO O MICROCONTROLADOR. Microcontroladores - Prof: Demantova 7. PROGRAMANDO O MICROCONTROLADOR 1 7. PROGRAMANDO O MICROCONTROLADOR: Hardware parte física do circuito eletrônico CPU onde está localizado o microcontrolador. Dentro do microcontrolador existe um conjunto

Leia mais

Instruções. Maicon A. Sartin

Instruções. Maicon A. Sartin Instruções Maicon A. Sartin SUMÁRIO Introdução Instruções Formatos de instruções Conjuntos de instruções Execução de instruções Introdução a Linguagem de Montagem Introdução a Linguagem de Montagem Níveis

Leia mais

ORGANIZAÇÃO DE COMPUTADORES

ORGANIZAÇÃO DE COMPUTADORES Organização de Computadores ORGANIZAÇÃO DE COMPUTADORES Curso: Tecnologia em Gestão da Tecnologia da Informação Ano: 2011 Instrução Precisam ser entendidas pelo processador Precisam ser decodificadas e

Leia mais

Sistemas de Computação. Instruções de Linguagem de Máquina

Sistemas de Computação. Instruções de Linguagem de Máquina Instruções de Linguagem de Máquina Linguagem de montagem do processador MIPS Operações aritméticas Instrução Exemplo Significado soma add a, b, c a = b + c subtração sub a, b, c a = b - c Compilação de

Leia mais

Compiladores e Computabilidade

Compiladores e Computabilidade Compiladores e Computabilidade Prof. Leandro C. Fernandes UNIP Universidade Paulista, 2013 GERAÇÃO DE CÓDIGO INTERMEDIÁRIO Geração de Código Intermediário Corresponde a 1ª etapa do processo de Síntese

Leia mais

Desenvolvimento de Aplicações Desktop

Desenvolvimento de Aplicações Desktop Desenvolvimento de Aplicações Desktop Conceitos Básicos de Programação Professor: Charles Leite O Desenvolvimento de Programas A programação consiste em indicar como o computador (hardware) deve trabalhar

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO DEPARTAMENTO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIA DA COMPUTAÇÃO Arquitetura e Organização de Computadores Conjunto de Instruções Prof. Sílvio Fernandes

Leia mais

DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO BACHARELADO EM INFORMÁTICA SISTEMAS OPERACIONAIS I 2 0 SEM/05 Teste 1 Unidade I DURAÇÃO: 50 MINUTOS

DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO BACHARELADO EM INFORMÁTICA SISTEMAS OPERACIONAIS I 2 0 SEM/05 Teste 1 Unidade I DURAÇÃO: 50 MINUTOS DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO BACHARELADO EM INFORMÁTICA SISTEMAS OPERACIONAIS I 2 0 SEM/05 Teste 1 Unidade I DURAÇÃO: 50 MINUTOS Aluno: Escore: Assinale a resposta que considerar mais correta.

Leia mais