Buscar

Aula 06 - Arquitetura e Organização de Computadores - sem while

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 9 páginas

Prévia do material em texto

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES 
INSTRUÇÕES DE DESVIO 
Críjina Chagas 
ARQUITETURA MIPS 
Linguagem de Montagem (Assembly) – Instruções de desvio 
 Instruções para tomada de decisão: 
 Alteram o fluxo de controle do programa; 
 Alteram a “próxima” instrução a ser executada. 
Instrução de Desvio: 
 Salto condicional; 
 Salto incondicional. 
ARQUITETURA MIPS 
Linguagem de Montagem (Assembly) – Instruções de desvio 
 Instruções MIPS para salto condicional: 
 Branch if equal (beq); 
 Branch if not equal (bne); 
 
 
 Instruções MIPS para salto incondicional 
 jump (j) 
ARQUITETURA MIPS 
Linguagem de Montagem (Assembly) – Instruções de desvio 
 Branch if equal (beq) 
 
beq registrador1, registrador2, L1 
 
 
 Semântica: Ir até a instrução rotulada por L1 se o valor no registrador 1 for igual ao 
valor no registrador 2 
 
 
ARQUITETURA MIPS 
Linguagem de Montagem (Assembly) – Instruções de desvio 
 Branch if not equal (bne): 
 
bne registrador1, registrador2, L1 
 
 
 Semântica: Ir até a instrução rotulada por L1 se o valor no registrador 1 não for 
igual ao valor no registrador 2 
ARQUITETURA MIPS 
Linguagem de Montagem (Assembly) – Instruções de desvio 
 Desvio incondicional : 
 J rotulo 
 
 
 Semântica: Ir para o rótulo especificado, incondicionalmente. 
ARQUITETURA MIPS 
Linguagem de Montagem (Assembly) – Instruções de desvio 
 Supondo que as cinco variáveis de f ate j corresponda aos cinco registradores de $s0 a 
$s4, qual p código MIPS gerado pelo compilador? 
 if ( i == j) 
 f = g + h; 
 else 
 f = g – h; 
 
ARQUITETURA MIPS 
Linguagem de Montagem (Assembly) – Instruções de desvio 
Vejamos a solução: 
 bne $s3, $s4, Else # Desvia para Else se i ≠ j 
 add $s0, $s1, $s2 # f = g + h (ignorada se i ≠ j ) 
 j Exit # Desvia para Exit 
 Else: sub $s0, $s1, $s2 # f = g – h (ignorada se i=j) 
 Exit: # Label Exit 
 
ARQUITETURA MIPS 
Linguagem de Montagem (Assembly) – Instruções de desvio 
 Sejam A e B com o endereço de memória dado nos registradores, respectivamente, em $s0 e $s1. Qual o 
código assembly MIPS correspondente? 
 
 if (A==B) 
 A++; 
else 
 B++; 
 _______________________ 
 if (A!=5) 
 A++; 
else 
 A--;

Outros materiais