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

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

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

Transcrição

1 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 do Prof. Frank Torres - UFMG Organização de Computadores 1 Organização de Computadores 2 Operação lógica deslocamento à esquea deslocamento à direita E bit a bit OU bit a bit NOU bit a bit MIPS sll srl and, andi or, ori nor Significado shift left logical shift right logical and or notor Operações de deslocamento (shift). Deslocam todos os bits de uma palavra para esquea ou direita, preenchendo os bits vazios com zero (não cíclico). São instruções do tipo R (registrador). A quantidade de bits a serem deslocados é especificada pelo campo (shift amount). Organização de Computadores 3 Organização de Computadores 4

2 shift left logical(sll) shift left logical(sll) sll $t2, $s, 4 # $t2 $s << 4 sll $t2, $s, 4 # $t2 $s << 4 Conteúdo: $s sll 16 $s 1 $t2 4 sll $t Organização de Computadores 5 Organização de Computadores 6 shift right logical(srl) shift right logical(srl) srl $t2, $s, # $t2 $s >> srl $t2, $s, # $t2 $s >> Conteúdo: $s srl 16 $s 1 $t2 2 srl $t Organização de Computadores 7 Organização de Computadores

3 shift right arithmetic(sra) Desloca bits àdireita, preservando o sinal (compl. a 2). Deslocamento de n bits corresponde àdivisão por 2 n. Dica: para divisões com valores de tipo integer. :: Revisão Complemento de 2 1 = +4 Complemento de 1: 111 Soma 1: = -4 Conteúdo: sra $t2, $s, 4 # $t2 $s >> 4 $s $t Organização de Computadores Organização de Computadores 1 shift right arithmetic(sra) sra $t2, $s, 4 # $t2 $s >> 4 AND bit a bit (and) and $t,, $t2 # $t & $t2 sra 16 $s 1 $t2 4 3 sra Conteúdo: $t $t Organização de Computadores 11 Organização de Computadores 12

4 AND bit a bit (and) and $t,, $t2 # $t & $t2 OR bit a bit (or) or $t,, $t2 # $t $t2 and 1 $t2 $t (24) h and Conteúdo: $t $t Organização de Computadores 13 Organização de Computadores 14 OR bit a bit (or) or $t,, $t2 # $t $t2 or 11 1 $t2 11 $t 1 (25) h or 111 NOR bit a bit (nor) A eração NOT (negação) tem apenas um erando. Para acompanhar o formato de dois erandos, a instrução NOR foi projetada no lugar do NOT. Se um erando for zero, NOR éequivalente ao NOT: A NOR = NOT (A OR ) = NOT (A) Organização de Computadores 15 Organização de Computadores 16

5 NOR bit a bit (nor) XOR bit a bit (xor) nor $t,, $zero # $t ~ xor $t,, $t2 # $t $t2 nor $zero $t (27) h nor xor 1 $t2 $t (26) h xor Organização de Computadores 17 Organização de Computadores 1 AND imediato (andi) andi $t,, 4 # $t & 4 OR imediato (ori) ori $t,, 4 # $t 4 (C) h andi $t immediate 4 constante (D) h ori $t immediate 4 constante Organização de Computadores 1 Organização de Computadores 2

6 :: Resumo Categoria Nome or Exemplo or $,$,$1 Operação $ = $ or$1 Comentários Transferência de Dados and xor nor and $,$,$1 xor $,$,$1 nor $,$,$1 $ = $ and$1 $ = $ xor$1 $ = $ nor$1 Lógicas Controle lógicas andi ori andi $,$,5 ori $,$,4 $ = $ and5 $ = $ or4 Imediato em 16 bits Imediato em 16 bits Supoe a procedimentos sll sll $,$,1 $ = $ << 1 Deslocamento 32 srl srl $,$,5 $ = $ >> 5 Deslocamento 32 sra sra $,$,5 $ = $ >> 5 Desl. 32, preserva sinal Operações Lógicas do MIPS Organização de Computadores 21 Organização de Computadores 22 Organização de Computadores 23 Organização de Computadores 24

7 Organização de Computadores 25 Organização de Computadores 26 Organização de Computadores 27 Organização de Computadores 2

8 :: Instruções de controle Instruções para tomada de decisão. Alteram o fluxo de controle do programa. Alteram a próxima instrução a ser executada. Instruções de controle. Salto condicional. Salto incondicional. :: Instruções de controle para salto condicional: Branch on equal (beq) Branch on not equal (bne) Set on less than (slt) Set on less than immediate (slti) para salto incondicional: jump(j) Organização de Computadores 2 Organização de Computadores 3 :: Instruções de controle Branch on not equal (bne) Desvia o programa para <label1> se $t!= bne $t,, label1 #if ($t!= ) goto label1 Branchonequal(beq) Desvia o programa para <label2> se $t == :: Instruções de controle :: Ex 1 Exemplo: bne $, $, sai add $1, $, $ sai: n beq $t,, label2 #if ($t == ) goto label2 Organização de Computadores 31 Organização de Computadores 32

9 Organização de Computadores 33 Organização de Computadores 34 Organização de Computadores 35 Organização de Computadores 36

10 :: Instruções de controle :: Formato Branch on not equal (bne) bne $t,, label 5 bne $t immediate xxx nº de wos saltadas xxx (16 bits) Organização de Computadores 37 Organização de Computadores 3 :: Instruções de controle :: Formato :: Instruções de controle :: Formato Branch on equal (beq) beq $t,, label 4 beq $t immediate xxx nº de wos saltadas As instruções de desvio condicional armazenam, no campo immediate, a quantidade de palavras (wos) que devem ser saltadas para chegar à instrução marcada pelo label(rótulo). Um número positivo indica que o salto deve ser no sentido para frente (atéo fim do código) xxx (16 bits) Um número negativo indica que o salto deve ser no sentido para trás (atéo início do código). Organização de Computadores 3 Organização de Computadores 4

11 :: Instruções de controle Set on less than (slt) Compara dois registradores. slt $s1, $s2, $s3 #if ($s2 < $s3) $s1 = 1 #else $s1 = Set on less than immediate (slti) Compara um registrador e uma constante. slti $s1, $s2, 1 #if ($s2 < 1) $s1 = 1 #else $s1 = Organização de Computadores 41 :: Instruções de controle Instruções do tipo Set onlessthan combinadas com instruções do tipo Branch permitem criar todas as condições relativas: igual diferente maior maior ou igual menor menor ou igual Organização de Computadores 42 :: Instruções de controle Jump(j) Desvio incondicional para um endereço de memória apontado por um label. j label Instruções do tipo branchindicam desvio da sequênciado programa mediante análise de uma condição. Instruções do tipo jumpindicam desvio incondicional da sequência do programa. :: Instruções de controle :: Ex 2 Exemplo bne $, $, else add $1, $, $ j sai else: sub $1, $, $ sai: n Organização de Computadores 43 Organização de Computadores 44

12 Organização de Computadores 45 Organização de Computadores 46 Organização de Computadores 47 Organização de Computadores 4

13 Organização de Computadores 4 Organização de Computadores 5 :: Instruções de controle :: Formato Set on less than (slt) slt $t,, $t2 #if ( < $t2) $t = 1 #else $t = slt 1 $t2 $t (2A) h slt Organização de Computadores 51 Organização de Computadores 52

14 :: Instruções de controle :: Formato Set on less than immediate (slti) :: Instruções de controle :: Formato Jump (j) slti $t,, 1 #if ( < 1) $t = 1 #else $t = j label # PC endereço[label] (A) h slti $t immediate 1 valor target (2) h xxx j endereço da instrução xxx (26 bits) Organização de Computadores 53 Organização de Computadores 54 :: Instruções de controle :: Formato Ao contrário das instruções de desvio condicional (beqe bne), o campo targetda instrução jump armazena o endereço da memória correspondente à instrução marcada pelo label. Como o endereço de memória éum múltiplo de 4 bytes (1 b ), seus dois últimos bits não são representados na instrução jump. O novo endereço consiste dos 4 bits mais significativos do PC atual e dos 26 (+2) bits da instrução. Organização de Computadores 55 :: Instruções de controle :: Resumo Categoria Supoe a decisão Nome bne beq j slt slti Exemplo bne $,$,rotulo beq $,$,rotulo j rotulo slt $1,$,$ slti $1,$,1 Operação se $ $ então PC endereço[rotulo] se $ = $ então PC endereço[rotulo] PC endereço[rotulo] se $ <$ então $1 1 senão $1 se $ <1 então $1 1 senão $1 Organização de Computadores 56

15 Questões Questões Como fazer? while lo Código assembly // $s3 = i, $s5 = k, $s6 = base ofsave[] Como fazer? for lo Código assembly // $s1 = j, $s2 = k while(save[i]!= k) { i += 1; } Lo: sll, $s3, 2 #t1 = 4*i add,, $s6 #t1 = end. de save[i] lw$t, () # t = valor de save[i] beq$t, $s5, Exit # ifsave[i] = k vai p. Exit addi$s3, $s3, 1 # i = i + 1 j Lo Exit: n for (j < k) { j += 1; } Lo: slt,$s1,$s2 # t1 = 1 if j < k, else t1 = beq, $, Exit # if j>= k then Exit addi$s1,$s1, 1 # j = j + 1 j Lo Exit: n Organização de Computadores 57 Organização de Computadores 5

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

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

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

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

Aula 14: Instruções e Seus Tipos

Aula 14: Instruções e Seus Tipos 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 Conceitos Básicos Diego Passos

Leia mais

Arquitetura de Computadores. Assembly Miscelâneas. Mário O. de Menezes. http://www.tf.ipen.br/~mario

Arquitetura de Computadores. Assembly Miscelâneas. Mário O. de Menezes. http://www.tf.ipen.br/~mario Arquitetura de Computadores Assembly Miscelâneas Mário O. de Menezes http://www.tf.ipen.br/~mario AC Mário O. de Menezes 1 Lembrando Instruções Lógicas e Shift operam em bits individuais, diferente de

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

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

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

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

Arquitetura de Computadores I

Arquitetura de Computadores I Arquitetura de Computadores I Pipeline -- Conflito de dados paradas e adiantamentos -- Conflito de controle detecção de desvios e descarte de instruções -- Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno

Leia mais

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores Prof. Doutora Ana Isabel Leiria Ano Lectivo 2004/05 Prof. Doutora Margarida Madeira e Moura Eng. António Rosado Ano lectivo 2005/06 Pág. 1 Guias das aulas práticas 1. INTRODUÇÃ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

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

Conjunto de Instruções. Conjunto de Instruções

Conjunto de Instruções. Conjunto de Instruções Conjunto de Instruções It is easy to see by formal-logical methods that there exist certain [instruction sets] that are in abstract adequate to control and cause the execution of any sequence of operations...

Leia mais

Revisão dependências de dados

Revisão dependências de dados Revisão dependências de dados Dependências de dados resolvidas com adiantamento (quase sempre) Deve garantir que instruções anteriores escreverão resultado, destino é mesmo que fonte, e instrução anterior

Leia mais

RISC simples. Aula 7. 31 de Março de 2005 1

RISC simples. Aula 7. 31 de Março de 2005 1 RISC simples Aula 7 31 de Março de 2005 1 Estrutura desta aula Principais características dos processadores RISC Estrutura de um processador (MIPS) sem pipeline, de ciclo único O datapath ou circuito de

Leia mais

Conjunto de Instruções

Conjunto de Instruções Conjunto de Instruções Para comandar o hardware do computador, é necessário que falemos sua língua: As palavras da linguagem de máquina são chamadas de instruções; O vocabulário forma o conjunto de instruções,

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

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

Programação ao nível da máquina. Operações lógicas e aritméticas

Programação ao nível da máquina. Operações lógicas e aritméticas Programação ao nível da máquina Operações lógicas e aritméticas Operações lógicas e aritméticas Operações: aritméticas: add, sub, inc, dec, cmp lógicas: and, or, xor, not Realizadas pela ALU (Arithmetic

Leia mais

Laboratório de Sistemas Processadores e Periféricos Lista de comandos de Assembly

Laboratório de Sistemas Processadores e Periféricos Lista de comandos de Assembly Laboratório de Sistemas Processadores e Periféricos Lista de comandos de Assembly Gustavo G. Parma Lista dos comandos assembly que serão utilizados ao longo das práticas. 1 Comandos 1. ADD destino, fonte

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

Operadores lógicos (bit a bit)

Operadores lógicos (bit a bit) Operadores lógicos (bit a bit) Instrução AND Instruções: AND OR XOR NOT Os operandos destas instruções podem ser de 8 ou 16 bits 10010011

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores Universidade Federal do Pampa Campus-Bagé Arquitetura e Organização de Computadores Aula 2 Revisão de Conceitos e Introdução a Desempenho Prof. Julio Saraçol juliosaracol@gmail.com Slide1 Aula 2 REVISANDO

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

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

Organização e Arquitetura de computadores

Organização e Arquitetura de computadores Organização e Arquitetura de computadores Instruções: a linguagem de máquina Prof. Dr. Luciano José Senger Introdução Operações no hardware do computador Operandos do hardware do computador Representando

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

Computador: Hardware + Software

Computador: Hardware + Software Conceitos Básicos de Arquitetura de Computadores Capítulo 3 Computador: Hardware + Software 1 Computador: Hardware + Software Aplicação (Netscape) Software Hardware Compilador Montador Processor Memory

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

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

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores Arquitetura e Organização de Computadores Fernando Fonseca Ramos Faculdade de Ciência e Tecnologia de Montes Claros Fundação Educacional Montes Claros 1 Índice 1- Introdução 2- Exemplo de Microarquitetura

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

Objetivos Gerais. Arquitetura de Computadores. Arquiteturas estudadas. O Computador Neander

Objetivos Gerais. Arquitetura de Computadores. Arquiteturas estudadas. O Computador Neander Objetivos Gerais Arquitetura de Computadores Prof. Fábio M. Costa Instituto de Informática UFG 1S/2005 ISA Parte II: Arquiteturas-Exemplo Simuladores e Máquinas Reais Demonstrar os conceitos genéricos

Leia mais

Visão Geral de Pipelining

Visão Geral de Pipelining Pipeline Visão Geral de Pipelining Instruções MIPS têm mesmo tamanho Mais fácil buscar instruções no primeiro estágio e decodificar no segundo estágio IA-32 Instruções variam de 1 byte a 17 bytes Instruções

Leia mais

Linguagem de Montagem Funcionamento de CPU e Assembly Rudimentar

Linguagem de Montagem Funcionamento de CPU e Assembly Rudimentar Componentes de um Computador (5) Linguagem de Montagem Funcionamento de CPU e Assembly Rudimentar Prof. João Paulo A. Almeida (jpalmeida@inf.ufes.br) 2007/01 - INF02597 Com slides de Roberta Lima Gomes

Leia mais

Arquitetura de Von Neumann. Computador ISA

Arquitetura de Von Neumann. Computador ISA UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA DEPARTAMENTO DE ELETRÔNICA E COMPUTAÇÃO Arquitetura de Von Neumann Computador ISA Professor: André Luís Kirsten, Me. Eng. Revisão Um computador

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

Capítulo MC10 Organização Básica de Processadores

Capítulo MC10 Organização Básica de Processadores 1 IC-UNICAMP MC 602 Circuitos Lógicos e Organização Computadores IC/Unicamp Prof Mario Côrtes Capítulo MC10 Organização Básica Processadores Tópicos Níveis abstração Máquina programa armazenado / Von Neumann

Leia mais

Organização e Arquitetura de computadores

Organização e Arquitetura de computadores Organização e Arquitetura de computadores O processador: o caminho de dados e o controle Prof. Dr. Luciano José Senger Introdução O desempenho de um programa depende: Número de instruções (depende do set

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

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

Arquitetura de Computadores. Ivan Saraiva Silva

Arquitetura de Computadores. Ivan Saraiva Silva Arquitetura de Computadores MIPS Pipeline Ivan Saraiva Silva Pipeline 4 pessoas (A, B, C, D) possuem sacolas de roupa para lavar, secar e dobrar A B C D Lavar leva 30 minutos Secar leva 40 minutos Dobrar

Leia mais

Arquitectura de Computadores II. Máquinas Virtuais

Arquitectura de Computadores II. Máquinas Virtuais Arquitectura de Computadores II 3º Ano Máquinas Virtuais João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Março 2003 Máquinas Virtuais Questões que levaram à introdução de máquinas

Leia mais

Arquitetura de Computadores. Prof. João Bosco Jr.

Arquitetura de Computadores. Prof. João Bosco Jr. Arquitetura de Computadores Prof. João Bosco Jr. Unidade II Aula 1 Nível ISA Posicionado entre a microarquitetura e o SO Define a arquitetura (Conjunto de Instruções) É a interface entre o Software e o

Leia mais

Programação Básica em STEP 7 Operações Binárias. SITRAIN Training for Automation and Drives. Página 6-1

Programação Básica em STEP 7 Operações Binárias. SITRAIN Training for Automation and Drives. Página 6-1 Conteúdo Página Operações Lógicas Binárias: AND, OR...2 Operações Lógicas Binárias: OR Exclusivo (XOR)...3 Contatos Normalmente Abertos e Normalmente Fechados. Sensores e Símbolos... 4 Exercício...5 Resultado

Leia mais

Funcionamento básico de um computador

Funcionamento básico de um computador Funcionamento básico de um computador Processador Unidade de dados Unidade de controlo Arquitetura de computador básica Linguagem assembly Exemplos Arquitetura de Computadores Funcionamento básico de um

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Arquitetura de Computadores Prof. Fábio M. Costa Instituto de Informática UFG 1S/2004 ISA: Arquitetura de Conjunto de Instruções Roteiro Introdução Classificação de conjuntos de instruções Endereçamento

Leia mais

ARQUITETURA DE COMPUTADORES

ARQUITETURA DE COMPUTADORES 01001111 01110010 01100111 01100001 01101110 01101001 01111010 01100001 11100111 11100011 01101111 00100000 01100100 01100101 00100000 01000011 01101111 01101101 01110000 01110101 01110100 01100001 01100100

Leia mais

Processadores para Ensino de Conceitos Básicos de Arquitetura de Computadores

Processadores para Ensino de Conceitos Básicos de Arquitetura de Computadores Processadores para Ensino de Conceitos Básicos de Arquitetura de Computadores Diana Morandi, André Luis Alice Raabe, Cesar Albenes Zeferino Universidade do Vale do Itajaí UNIVALI Rua Uruguai, 458 Caixa

Leia mais

7. Instruções lógicas, de deslocamento e de rotação

7. Instruções lógicas, de deslocamento e de rotação 7. Instruções lógicas, de deslocamento e de rotação São instruções que permitem mudar o padrão de bits num byte (8 bits) ou numa palavra (16 bits). Linguagens de alto nível (exceto C) não permitem manipular

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

Um Caminho de Dados Pipeline Para a ISA MIPS: Aprendendo na Prática

Um Caminho de Dados Pipeline Para a ISA MIPS: Aprendendo na Prática Um Caminho de Dados Pipeline Para a ISA MIPS: Aprendendo na Prática Francisco Carlos Silva Junior 1, Ivan Saraiva Silva 1 1 Departamento de Computação Universidade Federal do Piauí (UFPI) Caixa Postal

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

Parte Operativa e Parte de Controle do MIPS

Parte Operativa e Parte de Controle do MIPS Capítulo Parte Operativa e Parte de Controle do IPS Ricardo Jacobi niversidade de Brasília Departamento de Ciencia da Computacao Adaptado de Bruno Cunha e Carlos Llanos, IESB Introdução O desempenho de

Leia mais

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias:

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias: Arquitetura de Computadores Estrutura e Funcionamento da CPU Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Revisão dos conceitos básicos O processador é o componente vital do sistema de

Leia mais

Conjunto de Instruções MIPS

Conjunto de Instruções MIPS Conjunto de Instruções MIPS Ch3-1 RISC X CISC RISC (Reduced Instruction Set Computer) CISC (Complex Instruction Set Computer) 1. Instruções simples 2. Referencias a memória só com LOAD/STORE 3. Uso intensivo

Leia mais

Introdução a Organização de Computadores e Linguagens de Montagem. Ricardo Anido

Introdução a Organização de Computadores e Linguagens de Montagem. Ricardo Anido Introdução a Organização de Computadores e Linguagens de Montagem Ricardo Anido Draft date 15 de Agosto de 2013 Capítulo 3 O processador Faíska Neste capítulo iniciaremos o estudo mais detalhado do repertório

Leia mais

Exemplo: CC1 CC2 CC3 CC4 CC5 CC6 CC7 CC8 CC9 ADD $s0, $t0, $t1 IF ID EX MEM WB SUB $t2, $s0, $t3 IF Stall Stall ID EX MEM WB

Exemplo: CC1 CC2 CC3 CC4 CC5 CC6 CC7 CC8 CC9 ADD $s0, $t0, $t1 IF ID EX MEM WB SUB $t2, $s0, $t3 IF Stall Stall ID EX MEM WB 2.3 Dependências de dados (Data Hazards) Ocorre quando uma instrução depende do resultado de outra instrução que ainda está no pipeline. Este tipo de dependência é originado na natureza seqüencial do código

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

Aritmética. E agora: Implementação da Arquitetura

Aritmética. E agora: Implementação da Arquitetura Anotações Parte 4 OBS: Essas anotações são adaptações do material suplementar (apresentações PPT) ao Livro do Hennessy e Patterson, 2ª e 3ª Ed. e do Livro do 5ª. Ed. Supõe-se que os estudantes tenham noções

Leia mais

Nível da Microarquitetura

Nível da Microarquitetura Nível da Microarquitetura (Aula 10) Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 2007/2 Agradecimentos: Camilo Calvi - LPRM/DI/UFES Máquina de Vários Níveis Modernas (ISA)

Leia mais

Introdução à programação em linguagem assembly

Introdução à programação em linguagem assembly Introdução à programação em linguagem assembly Espaço de endereçamento Instruções de acesso à memória Modos de endereçamento Diretivas Tabelas Pilha Rotinas Arquitetura de Computadores Introdução à programação

Leia mais

ARQUITETURA DE COMPUTADORES I. It would appear that we have reached the limits of what it is possible to achieve with computer technology, although

ARQUITETURA DE COMPUTADORES I. It would appear that we have reached the limits of what it is possible to achieve with computer technology, although It would appear that we have reached the limits of what it is possible to achieve with computer technology, although one should be careful with such statements, as they tend to sound pretty silly in 5

Leia mais

Disciplina: Organização de Computadores Professor: Ney Laert Vilar Calazans

Disciplina: Organização de Computadores Professor: Ney Laert Vilar Calazans Prova P2 isciplina: Organização Computadores Professor: Ney aert Vilar Calazans luno: 3/maio/21 Para realizar a prova, refira-se à proposta organização MIPS monociclo vista em aula. O senho da versão monociclo

Leia mais

PCS-2302 / PCS-2024 Lab. de Fundamentos de Eng. de Computação

PCS-2302 / PCS-2024 Lab. de Fundamentos de Eng. de Computação PCS-2302 / PCS-2024 Lab. de Fundamentos de Eng. de Computação Aula 02 Anarosa Alves Franco Brandão (PCS 2302) Jaime Simão Sichman (PCS 2302) (PCS 2024) Ricardo Luís de Azevedo da Rocha (PCS 2024) Monitores:

Leia mais

Processadores BIP. Conforme Morandi et al (2006), durante o desenvolvimento do BIP, foram definidas três diretrizes de projeto:

Processadores BIP. Conforme Morandi et al (2006), durante o desenvolvimento do BIP, foram definidas três diretrizes de projeto: Processadores BIP A família de processadores BIP foi desenvolvida por pesquisadores do Laboratório de Sistemas Embarcados e Distribuídos (LSED) da Universidade do Vale do Itajaí UNIVALI com o objetivo

Leia mais

Programando o computador IAS

Programando o computador IAS Programando o computador IAS Edson Borin e Rafael Auler 21 de março de 2012 1 Introdução O computador IAS foi um dos primeiros computadores a implementar o conceito do programa armazenado. Neste paradigma,

Leia mais

Desenvolvimento de um Sistema Operacional de Tempo Real para um Microcontrolador Básico

Desenvolvimento de um Sistema Operacional de Tempo Real para um Microcontrolador Básico Desenvolvimento de um Sistema Operacional de Tempo Real para um Microcontrolador Básico Hendrig W. M. S. Gonçalves, Fabrício Bortoluzzi Laboratório de Redes Universidade do Vale do Itajaí, UNIVALI Itajaí,

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

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

CONSTRUÇÃO DE UMA UCP HIPOTÉTICA M++ INTRODUÇÃO

CONSTRUÇÃO DE UMA UCP HIPOTÉTICA M++ INTRODUÇÃO CONSTRUÇÃO DE UMA UCP HIPOTÉTICA M++ INTRODUÇÃO O seguinte artigo apresenta uma UCP hipotética construída no software simulador DEMOWARE Digital Works 3.04.39. A UCP (Unidade Central de Processamento)

Leia mais

Introdução Curta ao MIPS

Introdução Curta ao MIPS Introdução Curta ao MIPS Simão Melo de Sousa RELEASE - RELiablE And SEcure Computation Group Computer Science Department University of Beira Interior, Portugal desousa@di.ubi.pt http://www.di.ubi.pt/ desousa/

Leia mais

Representação de Dados

Representação de Dados Representação de Dados ! Porquê usar binário?! 0 ou 1! Verdadeiro ou Falso! Aberto ou Fechado ! P AND Q! P OR Q! NOT P! P XOR Q A B A AND B 0 0 0 0 1 0 1 0 0 1 1 1 A B A OR B 0 0 0 0 1 1 1 0 1 1 1 1 A

Leia mais

Arquitectura de Computadores RECUPERAÇÃO DO 1º TESTE

Arquitectura de Computadores RECUPERAÇÃO DO 1º TESTE Arquitectura de Computadores RECUPERAÇÃO DO 1º TESTE Ano Lectivo: 200/2009 Data: 6 de Janeiro de 2006 INFORMAÇÕES GERAIS Duração: 2h00 1. Mantenha na secretária apenas a sua identificação e uma caneta

Leia mais

Para os problemas seguintes considere os 5 andares de pipelining do MIPS:

Para os problemas seguintes considere os 5 andares de pipelining do MIPS: A. Pipelining Para os problemas seguintes considere os 5 andares de pipelining do MIPS: ETCH () ID (I) EXEC (E) MEM (M) WR (W) Para resolução dos problemas utilize a tabela em anexo, na qual deve indicar

Leia mais

CISC - Complex Instruction Set Computer

CISC - Complex Instruction Set Computer MAC 412- Organizãção de Computadores - Siang W. Song Baseado no livro de Tanenbaum - Structured Computer Organization Índice Conceito de microprogramação 1 Conceito de microprogramação Como surgiu Exemplos

Leia mais

Curso de Engenharia de Computação DESENVOLVIMENTO DE UM PROCESSADOR RISC EM VHDL

Curso de Engenharia de Computação DESENVOLVIMENTO DE UM PROCESSADOR RISC EM VHDL Curso de Engenharia de Computação DESENVOLVIMENTO DE UM PROCESSADOR RISC EM VHDL José Carlos Pereira Itatiba São Paulo Brasil Dezembro de 2006 ii Curso de Engenharia de Computação DESENVOLVIMENTO DE UM

Leia mais

1 Arm: características gerais

1 Arm: características gerais 1 Arm: características gerais A arquitetura ARM, inicialmente projetada na década de 1980, evoluiu ao longo dos anos, gerando diferentes versões, com pequenas variações no repertório de instruções e poder

Leia mais

28/9/2010. Unidade de Controle Funcionamento e Implementação

28/9/2010. Unidade de Controle Funcionamento e Implementação Arquitetura de Computadores Unidade de Controle Funcionamento e Implementação Prof. Marcos Quinet Universidade Federal Fluminense P.U.R.O. Operação da Unidade de Controle Unidade de controle: parte do

Leia mais

Geração de código intermediário. Novembro 2006

Geração de código intermediário. Novembro 2006 Geração de código intermediário Novembro 2006 Introdução Vamos agora explorar as questões envolvidas na transformação do código fonte em uma possível representação intermediária Como vimos, nas ações semânticas

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

O Processador: Via de Dados e Controle

O Processador: Via de Dados e Controle O Processador: Via de Dados e Controle Ch5A Via de Dados e Controle Implementação da arquitetura MIPS Visão simplificada de uma arquitetura monociclo Instruções de memória: lw, sw Instruções lógicas aritméticas:

Leia mais

Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação.

Universidade Federal de Campina Grande Unidade Acadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação. Universidade Federal de Campina Grande Unidade cadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e rquitetura de Computadores I Organização e rquitetura Básicas

Leia mais

Introdução. INF1005 Programação I 33K Prof. Gustavo Moreira gmoreira@inf.puc-rio.br

Introdução. INF1005 Programação I 33K Prof. Gustavo Moreira gmoreira@inf.puc-rio.br Introdução INF1005 Programação I 33K Prof. Gustavo Moreira gmoreira@inf.puc-rio.br introdução Tópicos conceitos básicos o que é um programa um programa na memória decifrando um código referência Capítulo

Leia mais

http://www.ic.uff.br/~boeres/fac.html! Conteúdos: Debora, Edcarllos, livros! slides disponíveis!

http://www.ic.uff.br/~boeres/fac.html! Conteúdos: Debora, Edcarllos, livros! slides disponíveis! http://www.ic.uff.br/~boeres/fac.html! 1 Conteúdos: Debora, Edcarllos, livros! slides disponíveis! Unidade central de Processamento realiza operações básicas codificadas em 0s e 1s instrução contém código

Leia mais

Arquitectura de Computadores II. Revisão e implementação do datapath do MIPS

Arquitectura de Computadores II. Revisão e implementação do datapath do MIPS Arqitectra de omptadores II LESI - 3º Ano Revisão e implementação do datapath do IPS João Lís Ferreira Sobral epartamento do Informática Universidade do inho Janeiro 22 Revisão do datapath (P) do IPS Visão

Leia mais

Geração de código. Ivan Ricarte INTRODUÇÃO À COMPILAÇÃO

Geração de código. Ivan Ricarte INTRODUÇÃO À COMPILAÇÃO Geração de código Ivan Ricarte 2008 Sumário Geração de código intermediário Código de três endereços Notação pós-fixa Otimização de código Heurísticas de otimização Geração de código em linguagem simbólica

Leia mais

MODELAGEM FUNCIONAL EM MATLAB DE UM PROCESSADOR RISC- 16 BITS EM UM SISTEMA EM CHIP PARA APLICAÇÕES SEM FIO

MODELAGEM FUNCIONAL EM MATLAB DE UM PROCESSADOR RISC- 16 BITS EM UM SISTEMA EM CHIP PARA APLICAÇÕES SEM FIO MODELAGEM FUNCIONAL EM MATLAB DE UM PROCESSADOR RISC- 16 BITS EM UM SISTEMA EM CHIP PARA APLICAÇÕES SEM FIO M. D. B. Melo, R. P. Jacobi, J. C. Costa Universidade de Brasília-Brasil maxwell@ene.unb.br,

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

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Universidade Federal de Campina Grande Unidade cadêmica de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e rquitetura de Computadores I Nível da Microarquitetura (Parte

Leia mais

Projetando um Computador Parte II Arquitetura do Processador BIP

Projetando um Computador Parte II Arquitetura do Processador BIP Projetando um Computador Parte II Arquitetura do Processador BIP Prof. Dr. Cesar Albenes Zeferino (zeferino@univali.br) Objetivo Projetando um Computador Parte II (2) Apresentar as noções do funcionamento

Leia mais

Conflitos. Aula 9. 31 de Março de 2005 1

Conflitos. Aula 9. 31 de Março de 2005 1 Conflitos Aula 9 31 de Março de 2005 1 Estrutura desta aula Taxonomia dos conflitos Dependências entre instruções Conflitos num pipeline Conflitos estruturais Conflitos de dados Conflitos de controlo Ref:

Leia mais

Arquitetura e Organização de Computadores. Capítulo 2 Conjunto de Instruções

Arquitetura e Organização de Computadores. Capítulo 2 Conjunto de Instruções Arquitetura e Organização de Computadores Capítulo 2 Conjunto de Instruções Material adaptado de: Patterson e Henessy, Computer Organization and Design 4 th Edition 2 É o repertório de instruções de um

Leia mais

AnsiLowerCase Converte todos os caracteres de uma string para minúsculo; Sintaxe: AnsiLowerCase(const S: string): string;

AnsiLowerCase Converte todos os caracteres de uma string para minúsculo; Sintaxe: AnsiLowerCase(const S: string): string; AnsiLowerCase Converte todos os caracteres de uma string para minúsculo; AnsiLowerCase(const S: string): string; Var X:String; Begin X:=Label1.caption; Label1.caption:=AnsiLowerCase(X); { Label1 ficará

Leia mais

Implementação de um soft-core em VHDL baseado no conjunto de instruções MIPS-I

Implementação de um soft-core em VHDL baseado no conjunto de instruções MIPS-I UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA CURSO DE CIÊNCIAS DA COMPUTAÇÃO Rafael Vargas Implementação de um soft-core em VHDL baseado no conjunto de instruções MIPS-I

Leia mais

MC404: Organização de Computadores e Linguagem de Montagem Lista de Exercícios

MC404: Organização de Computadores e Linguagem de Montagem Lista de Exercícios MC404: Organização de Computadores e Linguagem de Montagem Lista de Exercícios 2 o semestre de 2014 - Turmas E/F Prof. Edson Borin Questão 1. Qual a diferença entre as formas de armazenamento de dados

Leia mais

Arquitetura e Organização de Processadores. Aula 2. Processadores RISC Apresentação do processador MIPS

Arquitetura e Organização de Processadores. Aula 2. Processadores RISC Apresentação do processador MIPS Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação Arquitetura e Organização de Processadores Aula 2 Processadores RISC Apresentação do processador

Leia mais

Máquina Multinível. Um programa pode ser definido como uma seqüência de instruções que descrevem como executar uma determinada tarefa.

Máquina Multinível. Um programa pode ser definido como uma seqüência de instruções que descrevem como executar uma determinada tarefa. Máquina Multinível 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 para o processador.

Leia mais