65
Arquitetura MIPS Instru¸ oes MIPS Processando Instru¸ oes de Controle Arquitetura e Organiza¸c˜ ao de Computadores Othon Oliveira Fatec – Faculdade de Inform´ atica — PE 16 de outubro de 2016 Othon Oliveira Arquitetura e Organiza¸c˜ ao de Computadores

Instrucoes mips - continuação

Embed Size (px)

Citation preview

Page 1: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de Controle

Arquitetura e Organizacao de Computadores

Othon Oliveira

Fatec – Faculdade de Informatica — PE

16 de outubro de 2016

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 2: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de Controle

Sumario

1 Arquitetura MIPSDiagrama Simplificado

2 Instrucoes MIPSInstrucoes Logicas

3 Processando Instrucoes de ControleProcessando instrucoes

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 3: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleDiagrama Simplificado

Como as CPUs executam as instrucoes

Figura: DataPath

Figura: Ciclo debusca

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 4: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleDiagrama Simplificado

Como as CPUs executam as instrucoes

Figura: DataPath

Figura: Ciclo debusca

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 5: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleDiagrama Simplificado

Como as CPUs executam as instrucoes

Figura: DataPath

Figura: Ciclo debusca

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 6: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleDiagrama Simplificado

Diagrama simplificado

Fonte: UFMG

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 7: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleDiagrama Simplificado

Convencao dos registradores

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 8: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleDiagrama Simplificado

Armazenamento na memoria

O espaco de enderecamento de memoria do MIPS e de 230

palavras (de 32 bits)

O MIPS exige que todas as palavras comecem em enderecosmultiplos de 4 bytes

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 9: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleDiagrama Simplificado

Armazenamento na memoria

O espaco de enderecamento de memoria do MIPS e de 230

palavras (de 32 bits)O MIPS exige que todas as palavras comecem em enderecosmultiplos de 4 bytes

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 10: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleDiagrama Simplificado

Armazenamento na memoria

O espaco de enderecamento de memoria do MIPS e de 230

palavras (de 32 bits)O MIPS exige que todas as palavras comecem em enderecosmultiplos de 4 bytes

Fonte: StallingsOthon Oliveira Arquitetura e Organizacao de Computadores

Page 11: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleDiagrama Simplificado

Instrucoes de trasnferencia de dados

Banco de registradores

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 12: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleDiagrama Simplificado

Instrucoes de trasnferencia de dados

Banco de registradores

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 13: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Alguns detalhes

Operadores de deslocamento (shift)

Deslocam todos os bits de uma palavra para a esquerda oudireita, preenchendo os bits vazios com zero

Sao instrucoes do tipo R (registrador)A quantidade de bits a serem deslocados e especificadapelo campo shamt (shift amount)

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 14: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Alguns detalhes

Operadores de deslocamento (shift)

Deslocam todos os bits de uma palavra para a esquerda oudireita, preenchendo os bits vazios com zeroSao instrucoes do tipo R (registrador)

A quantidade de bits a serem deslocados e especificadapelo campo shamt (shift amount)

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 15: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Alguns detalhes

Operadores de deslocamento (shift)

Deslocam todos os bits de uma palavra para a esquerda oudireita, preenchendo os bits vazios com zeroSao instrucoes do tipo R (registrador)A quantidade de bits a serem deslocados e especificadapelo campo shamt (shift amount)

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 16: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Instrucoes Logicas

shift left logical (sll)

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 17: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Instrucoes Logicas

shift left logical (sll)

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 18: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Instrucoes Logicas

shift right logical (srl)

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 19: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Instrucoes Logicas

shift right logical (srl)

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 20: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Instrucoes Logicas

shift right logical (srl)

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 21: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Instrucoes Logicas

shift right logical (srl)

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 22: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Instrucoes Logicas

shift right aritmetic (sra)

Desloca bits a direita, preservando o sinal (compl. a 2)Deslocamento de n bits corresponde a divisao por 2n

Dica: para divisoes com valores do tipo inteiro

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 23: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Instrucoes Logicas

shift right aritmetic (sra)

Desloca bits a direita, preservando o sinal (compl. a 2)

Deslocamento de n bits corresponde a divisao por 2n

Dica: para divisoes com valores do tipo inteiro

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 24: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Instrucoes Logicas

shift right aritmetic (sra)

Desloca bits a direita, preservando o sinal (compl. a 2)Deslocamento de n bits corresponde a divisao por 2n

Dica: para divisoes com valores do tipo inteiro

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 25: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Instrucoes Logicas

shift right aritmetic (sra)

Desloca bits a direita, preservando o sinal (compl. a 2)Deslocamento de n bits corresponde a divisao por 2n

Dica: para divisoes com valores do tipo inteiro

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 26: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Instrucoes Logicas

shift right aritmetic (sra)

Desloca bits a direita, preservando o sinal (compl. a 2)Deslocamento de n bits corresponde a divisao por 2n

Dica: para divisoes com valores do tipo inteiro

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 27: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Instrucoes Logicas

shift right aritmetic (sra)

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 28: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Instrucoes Logicas

shift right aritmetic (sra)

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 29: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleInstrucoes Logicas

Instrucoes Logicas

shift right aritmetic (sra)

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 30: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Controle

Instrucoes para tomada de decisao

Alteram o fluxo de controle do programaAteram a “proxima” instrucao a ser executada

Instrucoes de controle:

Salto condicional

Salto incondicional

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 31: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Controle

Instrucoes para tomada de decisao

Alteram o fluxo de controle do programa

Ateram a “proxima” instrucao a ser executada

Instrucoes de controle:

Salto condicional

Salto incondicional

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 32: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Controle

Instrucoes para tomada de decisao

Alteram o fluxo de controle do programaAteram a “proxima” instrucao a ser executada

Instrucoes de controle:

Salto condicional

Salto incondicional

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 33: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Controle

Instrucoes para tomada de decisao

Alteram o fluxo de controle do programaAteram a “proxima” instrucao a ser executada

Instrucoes de controle:

Salto condicional

Salto incondicional

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 34: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Controle

Instrucoes para tomada de decisao

Alteram o fluxo de controle do programaAteram a “proxima” instrucao a ser executada

Instrucoes de controle:

Salto condicional

Salto incondicional

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 35: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Controle

Instrucoes para tomada de decisao

Alteram o fluxo de controle do programaAteram a “proxima” instrucao a ser executada

Instrucoes de controle:

Salto condicional

Salto incondicional

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 36: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Controle

Instrucoes MIPS para salto condicional

Branch on equal beqBranch on not equal bneSet on less than sltSet on less than immediate slti

Instrucoes MIPS para salto incondicional:

jump (j)

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 37: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Controle

Instrucoes MIPS para salto condicionalBranch on equal beq

Branch on not equal bneSet on less than sltSet on less than immediate slti

Instrucoes MIPS para salto incondicional:

jump (j)

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 38: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Controle

Instrucoes MIPS para salto condicionalBranch on equal beqBranch on not equal bne

Set on less than sltSet on less than immediate slti

Instrucoes MIPS para salto incondicional:

jump (j)

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 39: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Controle

Instrucoes MIPS para salto condicionalBranch on equal beqBranch on not equal bneSet on less than slt

Set on less than immediate slti

Instrucoes MIPS para salto incondicional:

jump (j)

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 40: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Controle

Instrucoes MIPS para salto condicionalBranch on equal beqBranch on not equal bneSet on less than sltSet on less than immediate slti

Instrucoes MIPS para salto incondicional:

jump (j)

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 41: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Controle

Instrucoes MIPS para salto condicionalBranch on equal beqBranch on not equal bneSet on less than sltSet on less than immediate slti

Instrucoes MIPS para salto incondicional:

jump (j)

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 42: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Controle

Instrucoes MIPS para salto condicionalBranch on equal beqBranch on not equal bneSet on less than sltSet on less than immediate slti

Instrucoes MIPS para salto incondicional:

jump (j)

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 43: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Logicas

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 44: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Logicas

Exemplo

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 45: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Logicas

Exemplo

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 46: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Logicas

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 47: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Logicas

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 48: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Logicas

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 49: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Logicas

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 50: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes Logicas

Branch on not equal

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 51: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle :: Formato

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 52: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 53: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 54: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 55: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 56: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 57: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 58: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 59: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 60: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 61: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 62: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle

Questao 1

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 63: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle

Questao 1

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 64: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle

Questao 2

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores

Page 65: Instrucoes mips - continuação

Arquitetura MIPSInstrucoes MIPS

Processando Instrucoes de ControleProcessando instrucoes

Instrucoes de controle

Questao 2

Fonte: Stallings

Othon Oliveira Arquitetura e Organizacao de Computadores