Aula 14: Instruções e Seus Tipos

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Aula 14: Instruções e Seus Tipos"

Transcrição

1 Aula 14: Instruções e Seus Tipos Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Instruções e Seus Tipos FAC 1 / 35

2 Conceitos Básicos Diego Passos (UFF) Instruções e Seus Tipos FAC 2 / 35

3 Processador e Instruções Processador é um dispositivo que opera em ciclos Ciclos de execução de instruções Pequenas tarefas executadas sobre determinados operandos Buscar Instrução Interpretar Instrução Executar Instrução Diego Passos (UFF) Instruções e Seus Tipos FAC 3 / 35

4 Instruções de Máquina Individualmente, instruções são simples Não realizam tarefas complexas eg, não há instrução de máquina para verificar a ortografia de uma palavra em um texto A composição/sequência de várias operações mais simples resulta em tarefas mais complexas Exemplos de tarefas simples (para as quais podem existir instruções de máquina): Operações lógicas/aritméticas simples sobre dois operandos Movimentação de dados entre a memória e registradores Alterações nos valores de certos registradores Diego Passos (UFF) Instruções e Seus Tipos FAC 4 / 35

5 Conjunto de Instruções Também chamado de ISA (do inglês, Instruction Set Architecture) Nome dado ao grupo de todas as instruções disponíveis em um processador Processadores diferentes podem disponibilizar instruções diferentes Em outras palavras, processadores diferentes podem ter conjuntos de instruções diferentes O conjunto de instruções de um processador deve permitir a implementação de qualquer tarefa computável ie, deve haver um grupo mínimo de instruções que combinadas possam resultar em qualquer tarefa computacional Em outras palavras, algoritmos escritos em linguagens de alto nível podem ser traduzidos para sequências destas instruções Diego Passos (UFF) Instruções e Seus Tipos FAC 5 / 35

6 Conjunto de Instruções: Reduzido vs Extenso Respeitando este conjunto mínimo necessário de instruções, processadores podem implementar conjuntos de instruções maiores ou menores Há méritos e desvantagens em ambas as abordagens Discutiremos isso em mais detalhes na última aula do curso De toda forma, há processadores reais com conjuntos de instruções grandes e pequenos Diego Passos (UFF) Instruções e Seus Tipos FAC 6 / 35

7 Conjunto de Instruções: Família Processadores diferentes podem implementar conjuntos de instruções diferentes Mas isso nem sempre ocorre De fato, é comum que um novo processador herde o conjunto de instruções de um modelo mais antigo Distinção importante: Conjunto de instruções: que operações estão disponíveis Microarquitetura: como estas operações são implementadas Processador mais novo pode implementar o mesmo conjunto de instruções, mas de maneira mais eficiente Diego Passos (UFF) Instruções e Seus Tipos FAC 7 / 35

8 Conjunto de Instruções: Família (II) Há vários motivos repetir um conjunto de instruções: Não reinventar a roda : reutilizar fórmula bem sucedida Permitir reutilização de compiladores Permitir compatibilidade de código executável binário Algumas vezes, pode-se ganhar desempenho alterando o conjunto de instruções Mas normalmente, maiores evoluções estão na forma de implementá-lo Permite o lançamento de processadores mais rápidos, mas compatíveis Consumidor pode atualizar computador Sem alterar software utilizado Diego Passos (UFF) Instruções e Seus Tipos FAC 8 / 35

9 Conjunto de Instruções: Família (III) Exemplos de conjuntos de instruções bem sucedidos: i368 (ou x86): processadores Intel, AMD (entre outros) de 32 bits x64 86: processadores Intel, AMD (entre outros) de 64 bits MIPS: extensivamente usada em dispositivos embarcados (roteadores) e consoles (Nintendo 64, Playstation 1 e 2, PSP) PowerPC: usado em carros, consoles (Wii, Wii U, XBox 360, Playstation 3) ARM: conjunto de instruções mais popular do mundo Domina os smartphones (95%) Apenas em 2013, 10 bilhões de processadores produzidos Também presente em tablets, aparelhos de TV, Começa a se popularizar no mercado de servidores Diego Passos (UFF) Instruções e Seus Tipos FAC 9 / 35

10 Conjunto de Instruções: Família (IV) Note que algumas vezes processadores de uma mesma família estendem o conjunto de instruções Acrescentam instruções Objetivo: permitir melhor desempenho de certos tipos de aplicação Mas instruções que já existiam são mantidas Compatibilidade é garantida Exemplo: Instruções MMX adicionadas ao Pentium, em 1997 Além das instruções tradicionais do i386 Diego Passos (UFF) Instruções e Seus Tipos FAC 10 / 35

11 O Conjunto de Instruções do MIPS A arquitetura MIPS é relativamente simples Ao menos em comparação com outras, como a x86 Por este motivo, esta arquitetura é comumente adotada em cursos de Arquiteturas de Computadores E livros didáticos da área No restante deste curso, utilizaremos a arquitetura MIPS e seu conjunto de instruções como estudo de caso Exemplificaremos conceitos com ela Diego Passos (UFF) Instruções e Seus Tipos FAC 11 / 35

12 Representação de uma Instrução Assim como qualquer outro dado em memória, instruções são armazenadas como conjuntos de bits Em algumas arquiteturas, o tamanho de uma instrução é fixo Geralmente, do tamanho da palavra do processador eg, MIPS Em outras, há instruções de tamanhos variáveis ie, algumas instruções são curtas, outras mais longas eg, família x86 Diego Passos (UFF) Instruções e Seus Tipos FAC 12 / 35

13 Representação de uma Instrução (II) O conjunto de bits de uma instrução pode ser dividido em vários subconjuntos Ou campos Cada um com uma semântica específica Exemplos de campos típicos: Opcode: código da operação, número que especifica operação a ser executada Operandos: representação numérica dos operandos sobre os quais operação será realizada Ou de onde obtê-los Resultado: representação numérica de onde guardar o resultado da operação Diego Passos (UFF) Instruções e Seus Tipos FAC 13 / 35

14 Representação de uma Instrução (III) Exemplo de instrução de soma no MIPS (32 bits): Opcode: (2) = 0 (10) Significado: Operação Lógica ou Aritmética Operando 1: (2) =17 (10) Significado: Primeiro Operando está no Reg 17 Operando 2: (2) =18 (10) Significado: Segundo Operando está no Reg 18 Resultado: (2) =8 (10) Significado: Armazenar Resultado no Reg 8 Campo não Utilizado Nesta Instrução (deve sempre ser 0) Função: (2) =32 (10) Significado: Operação de Soma Diego Passos (UFF) Instruções e Seus Tipos FAC 14 / 35

15 Tipos de Instrução de Máquina Diego Passos (UFF) Instruções e Seus Tipos FAC 15 / 35

16 Instruções e Seus Propósitos Geralmente, podemos dividir as instruções de um conjunto de instruções de acordo com o propósito Objetivo Tipo de operação realizada Tipo de dado manipulado Categorias comuns: Instruções aritméticas Instruções de transferência de dados Instruções lógicas Instruções de deslocamento Instruções de desvio condicional Instruções de desvio incondicional Instruções de ponto flutuante Instruções para operação atômica Diego Passos (UFF) Instruções e Seus Tipos FAC 16 / 35

17 Instruções Aritméticas Instruções que realizam contas sobre valores inteiros Na nossa classificação, há um grupo separado para operações sobre ponto flutuante Em geral, recebem dois operandos e têm um resultado numérico Na arquitetura MIPS, operandos são necessariamente registradores ou constantes especificadas na própria instrução Diego Passos (UFF) Instruções e Seus Tipos FAC 17 / 35

18 Instruções Aritméticas (II) Exemplos (do MIPS): Instrução add: Soma os valores de dois registradores Resultado é guardado também em um registrador Registradores podem ser todos diferentes, ou não Instrução sub: Equivalente à add, mas faz subtração Instrução addi Parecida com a add, mas um dos operandos é uma constante armazenada na própria instrução Diego Passos (UFF) Instruções e Seus Tipos FAC 18 / 35

19 Instruções de Transferência de Dados Em geral, instruções de processamento (eg, aritméticas, lógicas) operam sobre: Constantes, presentes na própria instrução Valores guardados em registradores Em outras palavras, elas não operam diretamente sobre dados na MP Mas registradores são pequenos Não podemos armazenar todos os dados do programa neles A maior parte dos dados estará em MP Solução: Trazer dados da MP para os registradores E levar dados dos registradores para a MP Diego Passos (UFF) Instruções e Seus Tipos FAC 19 / 35

20 Instruções de Transferência de Dados (II) Logo, precisamos de instruções que sejam capazes de fazer estas transferências Exemplos (do MIPS): Instrução load word: Traz uma palavra da memória principal para um registrador Recebe como operandos dois registradores e uma constante Um dos registradores é o destino O endereço da palavra a ser trazida é dado pela soma do outro registrador com a constante Instrução store word: Inverso da load word Armazena valor de um registrador de origem em um endereço da MP Endereço é dado pela soma de um registrador com uma constante Há também variações para outros tamanhos de dados Meia palavra, byte Há também instruções para carregar um valor constante (na própria instrução) para um registrador Diego Passos (UFF) Instruções e Seus Tipos FAC 20 / 35

21 Instruções Lógicas Similares às instruções aritméticas Mas executam operações de lógica Bit 0 representa o falso lógico Bit 1 representa o verdadeiro Operações lógicas são executadas bit a bit Operandos são números com vários bits Geralmente, uma palavra completa Operações são feitas para cada par de bits correspondentes dos operandos eg, com 4 bits, uma operação lógica OU entre 1010 e 0110 resulta em 1110 Diego Passos (UFF) Instruções e Seus Tipos FAC 21 / 35

22 Instruções Lógicas (II) Exemplos (do MIPS): Instrução and: Realiza a operação lógica E bit a bit Operandos são dois registradores Resultado também é colocado em um registrador Instrução or: Similar à and, mas efetua a operação lógica OU Instrução xor: Similar às anteriores, mas a operação é de OU Exclusivo Instrução nor: Idem, mas para a operação de Não-OU Diego Passos (UFF) Instruções e Seus Tipos FAC 22 / 35

23 Instruções de Deslocamento Algumas vezes é útil deslocarmos os bits de um número Para a esquerda ou para a direita Operação conhecida em inglês como shift Exemplo de utilidade aritmética: Deslocar bits uma casa para a esquerda multiplica por dois Deslocar bits uma casa para a direita divide por dois Há ainda outras utilidades na manipulação de bits em geral Diego Passos (UFF) Instruções e Seus Tipos FAC 23 / 35

24 Instruções de Deslocamento (II) O tipo mais comum de shift é o lógico No shift para a direita, bits à esquerda são completados com zero No shift para a esquerda, bits à direita são completados com 0 eg, com 4 bits, 0101 <<1 = 1010, 0101 >>1 = 0010 Há ainda o shift à direita aritmético Bits adicionados à esquerda são iguais ao bit mais significativo do operando eg, com 4 bits, 0101 >>1 = 0010, 1101 >>1 = 1110 Shifts aritméticos são úteis para fazer divisões por 2 em números negativos em complemento a 2 Diego Passos (UFF) Instruções e Seus Tipos FAC 24 / 35

25 Instruções de Deslocamento (III) Na arquitetura MIPS, há 6 tipos de instruções de shift disponíveis Shifts à esquerda, à direita, aritiméticos à direita Quantidade de bits deslocados dado por constante (na própria instrução) ou por valor em registrador Em todas as instruções, o valor a sofrer o deslocamento é sempre lido de um registrador E resultado é guardado em outro registrador (potencialmente diferente) Diego Passos (UFF) Instruções e Seus Tipos FAC 25 / 35

26 Instruções de Desvio Condicional Também comumente chamadas de instruções de branch Alteram o valor do registrador PC, caso uma determinada condição seja verdadeira Ou auxiliam nesta tarefa Lembrando: PC é um registrador especial Armazena endereço da próxima instrução a ser executada Geralmente, instruções são executadas em sequência Mas às vezes precisamos saltar para outra parte do código Exemplos? Diego Passos (UFF) Instruções e Seus Tipos FAC 26 / 35

27 Instruções de Desvio Condicional (II) Instruções de branch são necessárias para dar suporte à condicionais e repetições em linguagens de alto nível Alguns exemplos (em C): if (x == 3) { // Instrucao de branch y = 4; } else { y = 6; } while (x < 100) { // Instrucao de branch y = y + 1; x = x + y; } x = x * 4; Diego Passos (UFF) Instruções e Seus Tipos FAC 27 / 35

28 Instruções de Desvio Condicional (III) Há diversas pequenas variações das instruções de branch em cada arquitetura Alguns exemplos do MIPS: Instrução branch on equal: Operandos são dois registradores e uma constante numérica Compara os valores dos registradores Se forem iguais, soma ao PC à constante multiplicada por 4, e mais 4 Instrução branch on not equal: Idem, mas PC é mudado se valores foram diferentes Instrução set on less than: Recebe dois registradores como operandos e mais um para o resultado Se o primeiro operando é menor que o segundo, resultado é 1 Usado com branch on equal para comparações do tipo menor que Diego Passos (UFF) Instruções e Seus Tipos FAC 28 / 35

29 Instruções de Desvio Incondicional Também chamadas de instruções de jump, ou salto Parecidas com as instruções de branch, mas não há condição a ser testada Valor do PC é mudado sempre Programa sempre salta para outra instrução Utilidades? Diego Passos (UFF) Instruções e Seus Tipos FAC 29 / 35

30 Instruções de Desvio Incondicional (II) Em linguagens de alto nível, instruções de jump ocorrem em vários casos Por exemplo: Estruturas como goto Loops infinitos Chamadas de função Exemplos (em C): if (x == 3) { goto erro; // Jump } y = 6; erro: printf("houve algum erro!\n"); while (1) { // Espera nova conexao // Trata requisicao // }// Jump y = 4; x = sqrt(5); // Jump y = y + x; Diego Passos (UFF) Instruções e Seus Tipos FAC 30 / 35

31 Instruções de Desvio Incondicional (III) Exemplos (no MIPS): Instrução jump: Recebe um único operando: uma constante na própria instrução Valor do PC é alterado para 4 vezes o valor da constante concatenada com os 4 bits mais significativos do PC Instrução jump register: Parecido, mas o operando é um registrador Valor do PC é alterado para valor do registrador especificado Instrução jump and link: Idêntica à jump, mas adicionalmente guarda o valor atual do PC no registrador 31 Qual é a utilidade da instrução jump and link? Diego Passos (UFF) Instruções e Seus Tipos FAC 31 / 35

32 Formatos de Instruções Diego Passos (UFF) Instruções e Seus Tipos FAC 32 / 35

33 Instruções e Seus Formatos Instruções diferentes precisam de operandos diferentes Ou, mais genericamente, parâmetros diferentes As diferenças estão tanto no número, quanto no tipo eg, instrução jump recebe apenas um parâmetro vs três na instrução add Instrução add recebe três registradores vs dois (e uma constante) na addi Outra diferença: número de bits de cada parâmetro eg, uma constante pode usar 16 ou 26 bits no MIPS De alguma forma, processador conhece o formato de cada instrução Sabe como separar os bits da instrução nos grupos adequados E o que cada grupo representa Diego Passos (UFF) Instruções e Seus Tipos FAC 33 / 35

34 Formatos de Instrução no MIPS No MIPS, as instruções podem ser divididas de acordo com seu formato Há três formatos, no total: Formato R: instruções que recebem três registradores como parâmetros Formato I: instruções que recebem dois registradores e um imediato (constante) como parâmetros Formato J: para instruções do tipo jump, que recebem apenas um imediato (constante) como parâmetro Em qualquer um dos três tipos, os 6 bits mais significativos representam o OpCode Código numérico que define a operação Ou ao menos seu tipo Todas as instruções têm um comprimento de 32 bits O que varia, portanto, são os 26 bits menos significativos Diego Passos (UFF) Instruções e Seus Tipos FAC 34 / 35

35 Formato de Instrução no MIPS (II) Tipo Formato (bits) R opcode (6) rs (5) rt (5) rd (5) shamt (5) função (6) I opcode (6) rs (5) rt (5) imediato (16) J opcode (6) endereço (26) Em todos os formatos, os nomes dos campos querem dizer: rs, rt (formato R): registradores com valores de entrada para a instrução rd, rt (formato I): registrador de resultado shamt: quantidade de bits deslocados imediato: constante numérica endereço: constante numérica função: similar ao opcode, define mais especificamente o operação realizada eg, para operações aritméticas, o opcode define apenas que a instrução é uma operação aritimética Neste caso, o campo função determina se é uma soma, subtração, etc Diego Passos (UFF) Instruções e Seus Tipos FAC 35 / 35

Aula 26: Arquiteturas RISC vs. CISC

Aula 26: Arquiteturas RISC vs. CISC Aula 26: Arquiteturas RISC vs CISC Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Arquiteturas RISC vs CISC FAC 1 / 33 Revisão Diego Passos

Leia mais

Organização de Computadores 1

Organização de Computadores 1 Organização de Computadores 1 5 CONJUNTO DE INSTRUÇÕES Prof. Luiz Gustavo A. Martins Introdução O que é um conjunto de instruções? Coleção completa das instruções que a CPU é capaz de executar (entende).

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Caminho de Dados Slide 1 Sumário Introdução Convenções Lógicas de Projeto Construindo um Caminho de Dados O Controle da ULA Projeto da Unidade de Controle Principal

Leia mais

Arquitetura de Computadores. Linguagem de Máquina

Arquitetura de Computadores. Linguagem de Máquina Arquitetura de Computadores Linguagem de Máquina Ivan Saraiva Silva Formato de Instrução MAC O MIC possui dois formatos de instrução: 4 bits 12 bits Formato 1 CODOP ENDEREÇO 8 bits 8 bits Formato 2 CODOP

Leia mais

Representando Instruções no Computador

Representando Instruções no Computador Representando Instruções no Computador Humanos aprenderam a pensar na base 10 Números podem ser representados em qualquer base Números mantidos no hardware como série de sinais eletrônicos altos e baixos

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Universidade Federal de Santa Catarina Centro Tecnológico Curso de Pós-Graduação em Ciência da Computação Aula 2 Arquitetura do Processador MIPS: características gerais, registradores, formatos de instrução,

Leia mais

Paralelismo a Nível de Instrução

Paralelismo a Nível de Instrução Paralelismo a Nível de Instrução É possível obter maior desempenho computacional com: tecnologias mais avançadas, tais como circuitos mais rápidos; melhor organização da CPU, tais como o uso de múltiplos

Leia mais

Conjunto de. Instrução MIPS. Parte II. Instruções MIPS. Instruções MIPS. Instruções MIPS :: Instruções lógicas. :: Instruções lógicas

Conjunto de. Instrução MIPS. Parte II. Instruções MIPS. Instruções MIPS. Instruções MIPS :: Instruções lógicas. :: Instruções lógicas Faculdade de Ciências Aplicadas e Sociais de Petrolina FACAPE Conjunto de Pae II Transferência de Dados Lógicas Controle Supoe a procedimentos Prof. Sérgio Adaptado dos slides de Sistemas Processadores

Leia mais

Arquitetura do conjunto de instruções (ISA); características de instruções de máquina; tipos de operandos

Arquitetura do conjunto de instruções (ISA); características de instruções de máquina; tipos de operandos Arquitetura do conjunto de instruções (ISA); características de instruções de máquina; tipos de operandos Abordaremos nesta aula assuntos referentes à arquitetura do conjunto de instruções, tipos de operandos

Leia mais

Arquitetura de processadores: RISC e CISC

Arquitetura de processadores: RISC e CISC Arquitetura de processadores: RISC e CISC A arquitetura de processador descreve o processador que foi usado em um computador. Grande parte dos computadores vêm com identificação e literatura descrevendo

Leia mais

MODOS DE ENDEREÇAMENTO

MODOS DE ENDEREÇAMENTO UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO ERINALDO SANCHES NASCIMENTO MODOS DE ENDEREÇAMENTO MARINGÁ 2014 SUMÁRIO 6 MODOS DE ENDEREÇAMENTO...2 6.1 ENDEREÇAMENTO

Leia mais

REPRESENTAÇÃO DE DADOS EM SISTEMAS DE COMPUTAÇÃO AULA 03 Arquitetura de Computadores Gil Eduardo de Andrade

REPRESENTAÇÃO DE DADOS EM SISTEMAS DE COMPUTAÇÃO AULA 03 Arquitetura de Computadores Gil Eduardo de Andrade REPRESENTAÇÃO DE DADOS EM SISTEMAS DE COMPUTAÇÃO AULA 03 Arquitetura de Computadores Gil Eduardo de Andrade O conteúdo deste documento é baseado no livro Princípios Básicos de Arquitetura e Organização

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Caminho de Dados Slide 1 Sumário Introdução Convenções Lógicas de Projeto Construindo um Caminho de Dados O Controle da ULA Projeto da Unidade de Controle Principal

Leia mais

Introdução. A Informação e sua Representação (Parte II) Universidade Federal de Campina Grande. Unidade Acadêmica de Sistemas e Computação

Introdução. A Informação e sua Representação (Parte II) Universidade Federal de Campina Grande. Unidade Acadêmica de Sistemas e Computação Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Introdução à Computação A Informação e sua Representação (Parte II) Prof. a Joseana Macêdo Fechine Régis de Araújo joseana@computacao.ufcg.edu.br

Leia mais

Conjunto de Instruções e Arquitectura p.1

Conjunto de Instruções e Arquitectura p.1 Conjunto de Instruções e Arquitectura Luís Nogueira luis@dei.isep.ipp.pt Departamento Engenharia Informática Instituto Superior de Engenharia do Porto Conjunto de Instruções e Arquitectura p.1 Organização

Leia mais

Computadores de Programação (MAB353)

Computadores de Programação (MAB353) Computadores de Programação (MAB353) Aula 6: 27 de abril de 2010 1 Recaptulando operações já estudadas Operações lógicas 2 3 Exercícios Referências bibliográficas Recaptulando operações já estudadas Operações

Leia mais

PARTE II - CONJUNTO DE INSTRUÇÕES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR

PARTE II - CONJUNTO DE INSTRUÇÕES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR PARTE II - CONJUNTO DE INSTRUÇÕES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR Introdução Instruções são representadas em linguagem de máquina (binário) E x i s t e m l i n g u a g e n

Leia mais

Conjunto de instruções. O Conjunto de Instruções. Conjunto de instruções. Instruções típicas. Instruções típicas. Instruções típicas

Conjunto de instruções. O Conjunto de Instruções. Conjunto de instruções. Instruções típicas. Instruções típicas. Instruções típicas Conjunto de instruções O Conjunto de Instruções ISA Instruction Set Architecture Alguns conceitos... Linguagem máquina Combinação de 0 s e 1 s organizados segundo palavras que são as instruções que o processador

Leia mais

Introdução à Arquitetura de Computadores. Renan Manola Introdução ao Computador 2010/01

Introdução à Arquitetura de Computadores. Renan Manola Introdução ao Computador 2010/01 Introdução à Arquitetura de Computadores Renan Manola Introdução ao Computador 2010/01 Introdução Conceitos (1) Computador Digital É uma máquina que pode resolver problemas executando uma série de instruções

Leia mais

Linguagem de Montagem 2. Operações e Operandos

Linguagem de Montagem 2. Operações e Operandos Linguagem de Montagem 2 Operações e Operandos Revisão Para executar uma tarefa qualquer, um computador precisa receber instruções precisas sobre o que fazer Esse conjunto de instruções chamamos de algoritmo

Leia mais

Organização de Computadores Como a informação é processada?

Organização de Computadores Como a informação é processada? Curso de ADS/DTEE/IFBA Organização de Computadores Como a informação é processada? Prof. Antonio Carlos Referências Bibliográficas: 1. Ciência da Computação: Uma visão abrangente - J.Glenn Brokshear 2.

Leia mais

Conjunto de instruções e modos de. aula 4. Profa. Débora Matos

Conjunto de instruções e modos de. aula 4. Profa. Débora Matos Conjunto de instruções e modos de endereçamento aula 4 Profa. Débora Matos Conjunto de Instruções A = ((B + C) x D + E F)/(G x H) A H denotam posições da memória endereços As arquiteturas possuem as seguintes

Leia mais

Introdução à Arquitetura de Computadores

Introdução à Arquitetura de Computadores Introdução à Arquitetura de Computadores Um programa pode ser definido como uma seqüência de instruções que descrevem como executar uma determinada tarefa. Uma instrução pode ser definida como um comando

Leia mais

ARQUITETURA DE COMPUTADORES

ARQUITETURA DE COMPUTADORES 1 ARQUITETURA DE COMPUTADORES U C P Prof. Leandro Coelho Plano de Aula 2 Aula Passada Definição Evolução dos Computadores Histórico Modelo de Von-Neumann Básico CPU Mémoria E/S Barramentos Plano de Aula

Leia mais

Introdução à Engenharia de Computação

Introdução à Engenharia de Computação Introdução à Engenharia de Computação Tópico: O Computador como uma Máquina Multinível (cont.) José Gonçalves - LPRM/DI/UFES Introdução à Engenharia de Computação Máquina Multinível Moderna Figura 1 Máquina

Leia mais

Memória cache. Prof. Francisco Adelton

Memória cache. Prof. Francisco Adelton Memória cache Prof. Francisco Adelton Memória Cache Seu uso visa obter uma velocidade de acesso à memória próxima da velocidade das memórias mais rápidas e, ao mesmo tempo, disponibilizar no sistema uma

Leia mais

Computador Digital Circuitos de um computador (Hardware)

Computador Digital Circuitos de um computador (Hardware) Computador Digital SIS17 - Arquitetura de Computadores (Parte I) Máquina que pode resolver problemas executando uma série de instruções que lhe são fornecidas. Executa Programas conjunto de instruções

Leia mais

2. A influência do tamanho da palavra

2. A influência do tamanho da palavra 1. Introdução O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento (os cálculos matemáticos etc.) e de controle, durante a execução de

Leia mais

Organização e Arquitetura de Computadores. Aula 10 Ponto Flutuante Parte I. 2002 Juliana F. Camapum Wanderley

Organização e Arquitetura de Computadores. Aula 10 Ponto Flutuante Parte I. 2002 Juliana F. Camapum Wanderley Organização e Arquitetura de Computadores Aula 10 Ponto Flutuante Parte I 2002 Juliana F. Camapum Wanderley http://www.cic.unb.br/docentes/juliana/cursos/oac OAC Ponto Flutuante Parte I - 1 Panorama Números

Leia mais

Componentes do Computador e. aula 3. Profa. Débora Matos

Componentes do Computador e. aula 3. Profa. Débora Matos Componentes do Computador e modelo de Von Neumann aula 3 Profa. Débora Matos O que difere nos componentes que constituem um computador? Princípios básicos Cada computador tem um conjunto de operações e

Leia mais

Aula 17: UCP: Construindo um Caminho de Dados (Parte I)

Aula 17: UCP: Construindo um Caminho de Dados (Parte I) Aula 17: UCP: Construindo um Caminho de Dados (Parte I) Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) UCP: Caminho de Dados (I) FAC 1 / 33

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Pipeline Slide 1 Pipeline Pipeline Hazards: Hazards Estruturais Hazards de Dados Hazards de Controle Organização e Arquitetura de Computadores I Caminho de Dados

Leia mais

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 10

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 10 Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 10 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação QUAL É A INTERFACE ENTRE

Leia mais

Introdução à Engenharia de Computação

Introdução à Engenharia de Computação Introdução à Engenharia de Computação Tópico: Organização Básica de um Computador Digital Introdução à Engenharia de Computação 2 Componentes de um Computador Computador Eletrônico Digital É um sistema

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Aritmética Computacional Slide 1 Sumário Unidade Lógica e Aritmética Representação de Números Inteiros Aritmética de Números Inteiros Representação de Números

Leia mais

2 Formalidades referentes ao trabalho

2 Formalidades referentes ao trabalho Bacharelado em Ciência da Computação DINF / UFPR Projetos Digitais e Microprocessadores 1 o Semestre de 2006 MICO-v12.r0 07/03/2006 Profs. Luis Allan Künzle e Armando Luiz Nicolini Delgado Atenção: Este

Leia mais

Linguagem e Técnicas de Programação I Tipos de dados, variáveis e constantes. Prof. MSc. Hugo Souza Material desenvolvido por: Profa.

Linguagem e Técnicas de Programação I Tipos de dados, variáveis e constantes. Prof. MSc. Hugo Souza Material desenvolvido por: Profa. Linguagem e Técnicas de Programação I Tipos de dados, variáveis e constantes Prof. MSc. Hugo Souza Material desenvolvido por: Profa. Ameliara Freire Tipos de dados Os programas manipulam dados, armazenando-os

Leia mais

Informática I. Aula 5. http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1

Informática I. Aula 5. http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1 Informática I Aula 5 http://www.ic.uff.br/~bianca/informatica1/ Aula 5-13/05/2006 1 Ementa Histórico dos Computadores Noções de Hardware e Software Microprocessadores Sistemas Numéricos e Representação

Leia mais

MIPS. Prof. Carlos Bazilio http://www.ic.uff.br/~bazilio bazilio@ic.uff.br

MIPS. Prof. Carlos Bazilio http://www.ic.uff.br/~bazilio bazilio@ic.uff.br MIPS Prof. Carlos Bazilio http://www.ic.uff.br/~bazilio bazilio@ic.uff.br Introdução Plataforma projetada da parceria entre NEC, Nintendo, Silicon Graphics e Sony Possui um conjunto de instruções que e

Leia mais

Conceitos básicos. Universidade Tuiuti do Paraná UTP Faculdade de Ciências Exatas - FACET Tecnologia de Análise e Desenvolvimento de Sistemas

Conceitos básicos. Universidade Tuiuti do Paraná UTP Faculdade de Ciências Exatas - FACET Tecnologia de Análise e Desenvolvimento de Sistemas Conceitos básicos Universidade Tuiuti do Paraná UTP Faculdade de Ciências Exatas - FACET Tecnologia de Análise e Desenvolvimento de Sistemas Organização de Computadores Prof. André Luiz 1 Um computador

Leia mais

CISC RISC Introdução A CISC (em inglês: Complex Instruction Set Computing, Computador com um Conjunto Complexo de Instruções), usada em processadores Intel e AMD; suporta mais instruções no entanto, com

Leia mais

O Processador: Caminho de Dados e Controle

O Processador: Caminho de Dados e Controle 22 Capítulo 3 O Processador: Caminho de Dados e Controle O desempenho de um computador é determinado por três fatores principais: o número de instruções executadas, o período do clock e o número de ciclos

Leia mais

Arquitetura de Computadores I

Arquitetura de Computadores I Arquitetura de Computadores I Pipeline Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Organização do MIPS: pipeline Visão geral do pipeline Analogia com uma Lavanderia doméstica 1

Leia mais

Introdução aos Computadores Introdução à Ciência de Computadores Outubro 2011 1 / 16

Introdução aos Computadores Introdução à Ciência de Computadores Outubro 2011 1 / 16 Introdução aos Computadores Introdução à Ciência de Computadores Nelma Moreira Departamento de Ciência de Computadores da FCUP Outubro 2011 Introdução aos Computadores Introdução à Ciência de Computadores

Leia mais

Arquitetura de Computadores Moderna

Arquitetura de Computadores Moderna Arquitetura de Computadores Moderna Eduardo Barrére (eduardo.barrere@ice.ufjf.br) DCC/UFJF Baseado no material do prof. Marcelo Lobosco Agenda Visão Geral Objetivos do Curso Ementa Bibliografia Avaliações

Leia mais

Capítulo SETE Números em Ponto Fixo e Ponto Flutuante

Capítulo SETE Números em Ponto Fixo e Ponto Flutuante Capítulo SETE Números em Ponto Fixo e Ponto Flutuante 7.1 Números em ponto fixo Observação inicial: os termos ponto fixo e ponto flutuante são traduções diretas dos termos ingleses fixed point e floating

Leia mais

UCP: Construindo um Caminho de Dados (Parte I)

UCP: Construindo um Caminho de Dados (Parte I) UCP: Construindo um Caminho de Dados (Parte I) Cristina Boeres Instituto de Computação (UFF) Fundamentos de Arquiteturas de Computadores Material baseado cedido pela Profa. Fernanda Passos Cristina Boeres

Leia mais

ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM

ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM Linguagem de programação Linguagem de Alto Nível próximo ao ser humano, escrita de forma textual. Ex: if (a==b) a=b+c; Linguagem de Montagem (Assembly) próximo à linguagem de máquina, escrita em códigos

Leia mais

Infraestrutura de Hardware. Instruindo um Computador

Infraestrutura de Hardware. Instruindo um Computador Infraestrutura de Hardware Instruindo um Computador Componentes de um Computador Unid. Controle Controle Memória Registradores PC MAR IR AC Programa + Dados Instrução Endereço Operando ALU Temp Datapath

Leia mais

Sistemas Processadores e Periféricos Aula 5 - Revisão

Sistemas Processadores e Periféricos Aula 5 - Revisão Sistemas Processadores e Periféricos Aula 5 - Revisão Prof. Frank Sill Torres DELT Escola de Engenharia UFMG Adaptado a partir dos Slides de Organização de Computadores 2006/02 do professor Leandro Galvão

Leia mais

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy) Capítulo 4 João Lourenço Joao.Lourenco@di.fct.unl.pt Faculdade de Ciências e Tecnologia Universidade Nova de Lisboa 2007-2008 MARIE (Machine Architecture Really Intuitive and Easy) Adaptado dos transparentes

Leia mais

ULA Sinais de Controle enviados pela UC

ULA Sinais de Controle enviados pela UC Solução - Exercícios Processadores 1- Qual as funções da Unidade Aritmética e Lógica (ULA)? A ULA é o dispositivo da CPU que executa operações tais como: Adição Subtração Multiplicação Divisão Incremento

Leia mais

Conjunto de instruções do CPU. Arquitectura de um computador. Definição das instruções (1) Definição das instruções (2)

Conjunto de instruções do CPU. Arquitectura de um computador. Definição das instruções (1) Definição das instruções (2) Arquitectura de um computador Caracterizada por: Conjunto de instruções do processador (ISA Estrutura interna do processador (que registadores existem, etc Modelo de memória (dimensão endereçável, alcance

Leia mais

3. O NIVEL DA LINGUAGEM DE MONTAGEM

3. O NIVEL DA LINGUAGEM DE MONTAGEM 3. O NIVEL DA LINGUAGEM DE MONTAGEM Nas aulas anteriores tivemos a oportunidade de discutir dois diferentes níveis presentes na maioria dos computadores atuais. Nesta aula dedica-se a outro nível que também

Leia mais

Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos

Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos Lógica Aula 2 Técnicas de Programação Criando algoritmos Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos Criando

Leia mais

ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara Carga Horária: 60h Sumário Unidade Lógica Aritmetrica Registradores Unidade Lógica Operações da ULA Unidade de Ponto Flutuante Representação

Leia mais

A declaração de uma variável vel define o seu tipo. O tipo do dado define como ele será: Armazenado na memória. Manipulado pela ULA.

A declaração de uma variável vel define o seu tipo. O tipo do dado define como ele será: Armazenado na memória. Manipulado pela ULA. Representação de Dados Tipos de dados: Caracteres (letras, números n e símbolos). s Lógicos. Inteiros. Ponto flutuante: Notações decimais: BCD. A declaração de uma variável vel define o seu tipo. O tipo

Leia mais

Arquitetura de Computadores. Tipos de Instruções

Arquitetura de Computadores. Tipos de Instruções Arquitetura de Computadores Tipos de Instruções Tipos de instruções Instruções de movimento de dados Operações diádicas Operações monádicas Instruções de comparação e desvio condicional Instruções de chamada

Leia mais

Capítulo 7 Nível da Linguagem Assembly

Capítulo 7 Nível da Linguagem Assembly Capítulo 7 Nível da Linguagem Assembly Presente em quase todos os computadores modernos. Implementado por tradução. Linguagem fonte => Linguagem alvo. O programa no arquivo fonte não é executado diretamente

Leia mais

Organização de Computadores Software

Organização de Computadores Software Organização de Computadores Software Professor Marcus Vinícius Midena Ramos Colegiado de Engenharia de Computação (74)3614.1936 marcus.ramos@univasf.edu.br www.univasf.edu.br/~marcus.ramos Objetivos: Entender

Leia mais

CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM

CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM 71 Introdução Difere dos níveis inferiores por ser implementado por tradução A tradução é usada quando um processador está disponível para uma mensagem fonte mas

Leia mais

Predição de Desvios e Processadores Superescalares Especulativos

Predição de Desvios e Processadores Superescalares Especulativos Predição de Desvios e Processadores Superescalares Especulativos Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Tomasulo Especulativo Se os

Leia mais

Linguagem C: variáveis, operadores, entrada/saída. Prof. Críston Algoritmos e Programação

Linguagem C: variáveis, operadores, entrada/saída. Prof. Críston Algoritmos e Programação Linguagem C: variáveis, operadores, entrada/saída Prof. Críston Algoritmos e Programação Linguagem C Linguagem de uso geral (qualquer tipo de aplicação) Uma das linguagens mais utilizadas Foi utilizada

Leia mais

Unidade 5: Sistemas de Representação

Unidade 5: Sistemas de Representação Arquitetura e Organização de Computadores Atualização: 9/8/ Unidade 5: Sistemas de Representação Números de Ponto Flutuante IEEE 754/8 e Caracteres ASCII Prof. Daniel Caetano Objetivo: Compreender a representação

Leia mais

ArchC. Wesley Nunes Gonçalves

ArchC. Wesley Nunes Gonçalves Implementação do Processador ARM7 em ArchC Wesley Nunes Gonçalves 23 de novembro de 2007 ARM7 Instruções Implementadas O ARM possui 37 registradores, sendo 31 registradores de propósito geral e 6 registradores

Leia mais

Algoritmos Estruturas Seqüenciais. José Gustavo de Souza Paiva

Algoritmos Estruturas Seqüenciais. José Gustavo de Souza Paiva Algoritmos Estruturas Seqüenciais José Gustavo de Souza Paiva 1 Introdução Objetivo básico da computação auxiliar os seres humanos em trabalhos repetitivos e braçais, diminuindo i i d esforços e economizando

Leia mais

O modelo do computador

O modelo do computador O modelo do computador Objetivos: Mostrar como é o funcionamento dos computadores modernos Mostrar as limitações a que estamos sujeitos quando programamos Histórico Os primeiros computadores são da década

Leia mais

Sistemas Microcontrolados

Sistemas Microcontrolados Sistemas Microcontrolados Uma Abordagem com o Microcontrolador PIC 16F84 Nardênio Almeida Martins Novatec Editora Capítulo 1 Introdução Os microcontroladores estão presentes em quase tudo o que envolve

Leia mais

Computador Cleópatra

Computador Cleópatra ORGNIZÇÃO E RQUITETUR DE COMPUTDORES Computador Cleópatra Introdução a rquitetura e Programação lexandre mory Edson Moreno 2 / 9 Na ula nterior bstração em Software Programa em linguagem C Programa em

Leia mais

Caminho dos Dados e Atrasos

Caminho dos Dados e Atrasos Caminho dos Dados e Atrasos Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Pipeline MIPS O MIPS utiliza um pipeline com profundidade 5, porém

Leia mais

1. NÍVEL CONVENCIONAL DE MÁQUINA (Cont.) 1.3. INSTRUÇÕES Conceitos Básicos

1. NÍVEL CONVENCIONAL DE MÁQUINA (Cont.) 1.3. INSTRUÇÕES Conceitos Básicos 1. NÍVEL CONVENCIONAL DE MÁQUINA (Cont.) 1.3. INSTRUÇÕES Conceitos Básicos Já estudamos anteriormente que os processadores funcionam (ou melhor, o seu hardware funciona) através de ordens simples e básicas,

Leia mais

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO Santa Maria, 01 de Novembro de 2013. Revisão aula passada Projeto de Arquitetura Decisões de projeto de Arquitetura

Leia mais

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - Aula 2 - O NÍVEL DA MICROARQUITETURA 1. INTRODUÇÃO Este é o nível cuja função é implementar a camada ISA (Instruction Set Architeture). O seu projeto depende da arquitetura do conjunto das instruções

Leia mais

Unidade: Unidade Lógica e Aritmética e Registradores. Unidade I:

Unidade: Unidade Lógica e Aritmética e Registradores. Unidade I: Unidade: Unidade Lógica e Aritmética e Registradores Unidade I: 0 Unidade: Unidade Lógica e Aritmética e Registradores UNIDADE LÓGICA E ARITMÉTICA E REGISTRADORES O Processador é um chip com milhares de

Leia mais

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES SISTEMAS DE NUMERAÇÃO: REPRESENTAÇÃO EM PONTO FLUTUANTE. Prof. Dr. Daniel Caetano 2012-1

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES SISTEMAS DE NUMERAÇÃO: REPRESENTAÇÃO EM PONTO FLUTUANTE. Prof. Dr. Daniel Caetano 2012-1 ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES SISTEMAS DE NUMERAÇÃO: REPRESENTAÇÃO EM PONTO FLUTUANTE Prof. Dr. Daniel Caetano 2012-1 Objetivos Compreender o que é notação em ponto flutuante Compreender a

Leia mais

Sistemas de Numeração (Aula Extra)

Sistemas de Numeração (Aula Extra) Sistemas de Numeração (Aula Extra) Sistemas de diferentes bases Álgebra Booleana Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 27/2 Sistemas de Numeração Um sistema de numeração

Leia mais

UNIP - UNIVERSIDADE PAULISTA. Arquitetura de computadores

UNIP - UNIVERSIDADE PAULISTA. Arquitetura de computadores UNIP - UNIVERSIDADE PAULISTA Arquitetura de computadores ORGANIZAÇÃO DE COMPUTADORES Bibliografia: MONTEIRO, M. A. Introdução à organização de computadores. 4 ed. RJ. LTC 2001. TANEMBAUM, A. S. Organização

Leia mais

Microcontroladores e Interfaces 3º Ano Eng. Electrónica Industrial

Microcontroladores e Interfaces 3º Ano Eng. Electrónica Industrial Microcontroladores e Interfaces 3º Ano Eng. Electrónica Industrial Carlos A. Silva 2º Semestre de 2005/2006 http://www.dei.uminho.pt/lic/mint Assunto: Pipeline Aula #5 28 Mar 06 Revisão Na implementação

Leia mais

Software Básico. Conceito de Linguagem de Máquina e Montagem: introdução ao Assembly. Prof. MSc. Hugo Vieira L. Souza

Software Básico. Conceito de Linguagem de Máquina e Montagem: introdução ao Assembly. Prof. MSc. Hugo Vieira L. Souza Software Básico Conceito de Linguagem de Máquina e Montagem: introdução ao Assembly Prof. MSc. Hugo Vieira L. Souza Este documento está sujeito a copyright. Todos os direitos estão reservados para o todo

Leia mais

Descrição e análise da implementação em Assembly MIPS da função itoa

Descrição e análise da implementação em Assembly MIPS da função itoa Descrição e análise da implementação em Assembly MIPS da função itoa Alana Rocha 1, Guilherme Alves 2, Guilherme Nunes 3 e Luiz Guilherme 4 Objetivo e visão geral do documento Este documento tem o objetivo

Leia mais

Computadores de Programação (MAB353)

Computadores de Programação (MAB353) Computadores de Programação (MAB353) Aula 8: 04 de maio de 2010 1 Formatos de instruções MIPS 2 Endereçamento de operandos imediatos de 32 bits Endereçamento em desvios Modos de endereçamento do MIPS 3

Leia mais

Algoritmos DCC 119. Introdução e Conceitos Básicos

Algoritmos DCC 119. Introdução e Conceitos Básicos Algoritmos DCC 119 Introdução e Conceitos Básicos Sumário Sistemas de Numeração Sistemas Computacionais Estrutura de um Computador Digital Sistemas Operacionais Algoritmo Introdução Formas de representação

Leia mais

Memórias. O que são Memórias de Semicondutores? São componentes capazes de armazenar informações Binárias (0s e 1s)

Memórias. O que são Memórias de Semicondutores? São componentes capazes de armazenar informações Binárias (0s e 1s) Memórias O que são Memórias de Semicondutores? São componentes capazes de armazenar informações Binárias (0s e 1s) Essas informações são guardadas eletricamente em células individuais. Chamamos cada elemento

Leia mais

Arquiteturas RISC. (Reduced Instructions Set Computers)

Arquiteturas RISC. (Reduced Instructions Set Computers) Arquiteturas RISC (Reduced Instructions Set Computers) 1 INOVAÇÕES DESDE O SURGIMENTO DO COMPU- TADOR DE PROGRAMA ARMAZENADO (1950)! O conceito de família: desacoplamento da arquitetura de uma máquina

Leia mais

Arquitecturas Alternativas. Pipelining Super-escalar VLIW IA-64

Arquitecturas Alternativas. Pipelining Super-escalar VLIW IA-64 Arquitecturas Alternativas Pipelining Super-escalar VLIW IA-64 Pipeline de execução A execução de uma instrução passa por várias fases: Vimos o ciclo: fetch, decode, execute fetch decode execute instrução

Leia mais

Arquitetura de Sistemas Digitais (FTL066) Instruções: Linguagem do Computador Segunda Lista de Exercícios

Arquitetura de Sistemas Digitais (FTL066) Instruções: Linguagem do Computador Segunda Lista de Exercícios Arquitetura de Sistemas Digitais (FTL066) Instruções: Linguagem do Computador Segunda Lista de Exercícios 1) Explore conversões de números a partir de números binárias com sinal e sem sinal para decimal:

Leia mais

Sistemas Processadores e Periféricos Aula 2 - Revisão

Sistemas Processadores e Periféricos Aula 2 - Revisão Sistemas Processadores e Periféricos Aula 2 - Revisão Prof. Frank Sill Torres DELT Escola de Engenharia UFMG Adaptado a partir dos Slides de Organização de Computadores 2006/02 do professor Leandro Galvão

Leia mais

Organização e Arquitetura de Computadores I. de Computadores

Organização e Arquitetura de Computadores I. de Computadores Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de I Organização Básica B de (Parte V, Complementar)

Leia mais

ARQUITECTURA DE COMPUTADORES CAPÍTULO II AULA X

ARQUITECTURA DE COMPUTADORES CAPÍTULO II AULA X ARQUITECTURA DE COMPUTADORES CAPÍTULO II AULA X Índice Traduzindo e iniciando uma aplicação Compiladores Assembladores Linkers Loaders DLLs Iniciando um programa em Java Após toda a matéria abordada nesta

Leia mais

Prova P4/PS Disciplina: Organização de Computadores-EC Professor: Ney Laert Vilar Calazans lui+ori syscall 1. .text 2. main: $s0, string 3.

Prova P4/PS Disciplina: Organização de Computadores-EC Professor: Ney Laert Vilar Calazans lui+ori syscall 1. .text 2. main: $s0, string 3. Prova P4/PS Disciplina: Organização de Computadores-EC Professor: Ney Laert Vilar Calazans Aluno: 30/novembro/2012 1. (4 pontos) Assumindo uma frequência de relógio de 500 MHz para a organização MIPS multiciclo

Leia mais

Pipeline. Todos os estágios devem estar prontos ao mesmo tempo para prosseguir.

Pipeline. Todos os estágios devem estar prontos ao mesmo tempo para prosseguir. O throughput de um pipeline é determinado pela freqüência com que uma instrução sai do pipeline Todos os estágios devem estar prontos ao mesmo tempo para prosseguir O tempo requerido para mover uma instrução

Leia mais

Anotações da 2a Edição

Anotações da 2a Edição Anotações da 2a Edição OBS: Essas anotações são adaptações do material suplementar (apresentações PPT) ao Livro do Hennessy e Patterson. Supõe-se que os estudantes tenham noções de lógica digital e linguagem

Leia mais

Projeto 1 - Bootloader

Projeto 1 - Bootloader Projeto 1 - Bootloader IF677 - Infra-Estrutura de Software Centro de Informática - UFPE Autor: Thyago Porpino (tnp) Objetivos Desmistificar o processo de inicialização de um computador. Entender como um

Leia mais

LINGUAGEM C. Estrutura básica de um programa

LINGUAGEM C. Estrutura básica de um programa LINGUAGEM C Estrutura básica de um programa Um programa em linguagem C é constituído por uma sequência de funções (módulos) que em conjunto irão permitir resolver o problema proposto. Estas funções contêm

Leia mais

Aula 2 Sistemas de Numeração (Revisão)

Aula 2 Sistemas de Numeração (Revisão) Aula 2 Sistemas de Numeração (Revisão) Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://dase.ifpe.edu.br/~alsm 1 O que fazer com essa apresentação 2 Agenda Breve revisão da aula anterior

Leia mais

CONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

CONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com CONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com Objetivos Compreender os conceitos de lógica de programação e de algoritmos. Conhecer

Leia mais

Introdução. A Informação e sua Representação (Parte III) Universidade Federal de Campina Grande Departamento de Sistemas e Computação

Introdução. A Informação e sua Representação (Parte III) Universidade Federal de Campina Grande Departamento de Sistemas e Computação Universidade Federal de Campina Grande Departamento de Sistemas e Computação Introdução à Computação A Informação e sua Representação (Parte III) Prof.a Joseana Macêdo Fechine Régis de Araújo joseana@computacao.ufcg.edu.br

Leia mais

Universidade Federal de São João Del Rei - UFSJ

Universidade Federal de São João Del Rei - UFSJ Universidade Federal de São João Del Rei - UFSJ Instituída pela Lei 0.45, de 9/04/00 - D.O.U. de /04/00 Pró-Reitoria de Ensino de Graduação - PROEN Disciplina: Cálculo Numérico Ano: 03 Prof: Natã Goulart

Leia mais

ARQUITETURA DE COMPUTADORES - 1866

ARQUITETURA DE COMPUTADORES - 1866 7 Unidade Central de Processamento (UCP): O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento e de controle, durante a execução de um

Leia mais

Técnico em Informática - Instalação e Manutenção de Computadores PROCESSADORES

Técnico em Informática - Instalação e Manutenção de Computadores PROCESSADORES Técnico em Informática - Instalação e Manutenção de Computadores PROCESSADORES Processador... 2 Clock... 5 Multiplicador de clock / FSB... 6 Memória Cache... 6 Processador O processador é o cérebro do

Leia mais