Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouJoão Victor Cerveira Mota Alterado mais de 8 anos atrás
1
Instruções Condicionais e de Acesso a Memória Universidade Federal de Uberlândia Faculdade de Computação Prof. Dr. rer. nat. Daniel D. Abdala GSI013 – Arq. e Org. de Computadores Arquitetura e Organização de Computadores
2
Na Aula Anterior... 2
3
Nesta Aula Instruções de controle de fluxo; Codificando fluxo em Assembly: – If-then – If-then-else – Switch-case Codificando repetições em Assembly: – while() / do while() – for() Instruções de Acesso a memória 3
4
Instruções de Controle de Fluxo slt- set if less than slti- set if less than immediate beq- branch if equal bne- branch if not equal beqz- branch if equal zero bgtz- branch if greather than zero blez- branch if less than or equal to zero bltz- branch if less than zero 4
5
slt $t1,$t2,$t3 – Se t2 é menor que t3 então t1 = 1 senão t1 = 0 slti $t1,$t2,-100 – Se t2 é menor ou igual a -100 então t1=1 senão t1-0 beq $t1,$t2,label – Se t1 = t2 fluxo de execução pula para label bne $t1,$t2,label – Se t1 !=t1 fluxo de execução pula para label bgez $t1,label – Se t1>=0 fluxo de execução pula para label Instruções (2) 5
6
bgtz $t1,label – Se t1>0 fluxo de execução pula para label bltz $t1,label – Se t1<0 fluxo de execução pula para label blez $t1,label – Se t1<=0 fluxo de execução pula para label Instruções (3) 6
7
if –then - else 7
8
Switch/case Jump address table 8
9
Switch/case (2) 9
10
Switch/case (3) 10
11
while 11
12
for 12
13
Jumps Instruções de salto permitem alterar o fluxo de execução de programas; A ISA do MIPS32 prevê vários tipos de instruções de salto: – Saltos relativos ao PC; – Saltos Absolutos. 13
14
Jump (2) j LABEL 14 opcode address 31:2625:0 PC address 00 31:2827:02
15
Outras Instruções de Salto jr→ jump register – Usado para saltos absolutos; – Usado em sub-rotinas (retorno da sub-rotina); – Endereços de até 32 bits (capacidade do registrador); – Ex: jr $s0 jal→jump and link – Usado em sub-rotinas; – Seta $ra para o endereço de PC+4 (prox. instrução); – Salta para o endereço especificado; – Ex: jal LABEL jalr→jump and link register – Usado em sub-rotinas; – Seta $ra para PC+4 e salta para a pos. de mem. em $s0; – Ex: jalr $s0 15
16
Instruções de Acesso a Memória Instruções que permitem a movimentação de dados entre o processador (registradores) e a memória; 16
17
Prolar Leitura: – Hennessy: pgs. – Patterson: pgs. – Stallings: pgs. – Tanenbaum: pgs: 17
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.