Buscar

Conjunto de Instruções e Modos de Endereçamento

Prévia do material em texto

ORGANIZAÇÃO DE COMPUTADORES 
Aula 7 – Conjunto de Instruções 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
ESTRUTURA DA DISCIPLINA 
AULA 1 – Fundamentos 
AULA 2 – Sistemas de Numeração 
AULA 3 – Representação de dados 
AULA 4 – Lógica Digital 
AULA 5 – Álgebra Booleana 
AULA 6 – Modelo de Von Neumann 
AULA 7 – Conjunto de Instruções 
AULA 8 – Processador 
AULA 9 – Memória 
AULA 10 – Dispositivos de Entrada e Saída 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
Conteúdo Programático AULA 7 
 Tipos de Instruções 
 
 Formato de instruções 
 
 Modos de endereçamento 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
INSTRUÇÕES 
São as ordens que o computador entende 
 
Cada família de processadores tem o seu próprio conjunto de instruções 
 instruction set 
 
 
Quem usa essas instruções? 
 Programador Assembly 
 Compiladores 
 
mov ax,#0x7cc ; posiciona na 
metade da tela 
mov DI,ax ; 
seg es 
mov [DI],#0x9f4F ; O 
seg es 
mov [DI+2],#0x9f4C ; L 
seg es 
mov [DI+4],#0x9f41 ; A 
seg es 
mov [DI+6],#0x9f21 ; ! 
loop1: jmp loop1 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
Instruções 
Aritméticas e Lógicas 
Instruções de 
Movimentação de 
Dados 
Instruções de 
Transferências de 
Controle 
Transferem dados entre 
registradores ou entre registrador 
e memória principal (MOV) 
Realizam operações aritméticas 
(ADD, SUB ...) e lógicas (AND, OR) 
Executam o desvio do fluxo 
sequencial do código (JMP) 
Tipos de Instrução 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
CÓDIGO DA 
OPERAÇÃO 
OPERANDO(S) 
Indica que operação será executada. A 
quantidade de bits desse código determina o 
número máximo de instruções 
Indica o(s) dado(s) que será(ão) 
manipulado(s): números, caracteres, 
endereços 
Formato de uma Instrução 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
 
ADD op1,op2,op3 
 
MOV op1,op2 
 
ADD R, op1 
 
JNZ op1 
 
ADD OP1 OP2 OP3 
MOV OP1 OP2 
ADD R OP1 
JNZ OP1 
Exemplos de Instruções 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
 Um determinado processador possui um 
conjunto de 64 instruções. Quantos bits 
de opcode a instrução deverá possuir? 
 
OPCODE OPER1 OPER2 ....OPERn 
? 
EXEMPLO 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
 Um determinado processador possui um 
conjunto de 64 instruções. Quantos bits 
de opcode a instrução deverá possuir? 
 
OPCODE OPER1 OPER2 ....OPERn 
? 
EXEMPLO 
Solução: 64 = 26 , logo são necessários 6 bits 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
Registradores de uso geral para armazenamento 
temporários dos dados que serão processados 
Exemplos: AX, BX 
 
Registradores de uso específico para funções pré-
definidas de controle 
Exemplos: IR, PSW, PC 
Registradores 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
IMEDIATO 
DIRETO 
INDIRETO 
Utiliza um valor como operando e não um 
endereço na memória 
ADD #A,R1 
Indica o endereço de memória onde está o 
operando 
Indica um ponteiro para o operando 
ADD (A), R1 
ADD (R1),R2 
Modos de Endereçamento 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
O endereço se refere a um registrador 
ADD R,OP1 
Obtido pela soma do operando com o 
conteúdo de um registrador base 
ADD (A)R1, R2 
REGISTRADOR 
DESLOCAMENTO 
Modos de Endereçamento 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
mov ax,#0x7cc ; posiciona na metade da tela 
mov DI,ax ; 
seg es 
mov [DI],#0x9f4F ; O 
seg es 
mov [DI+2],#0x9f4C ; L 
seg es 
mov [DI+4],#0x9f41 ; A 
seg es 
mov [DI+6],#0x9f21 ; ! 
loop1: jmp loop1 
Revendo o código ... 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
IMEDIATO:  sem referência à memória 
  limitado e pouco flexível 
 
DIRETO:  simples 
  espaço de endereçamento limitado 
 
INDIRETO:  espaço de endereçamento grande 
  múltiplas referências à memória 
 
REGISTRADOR:  sem referência à memória 
  espaço de endereçamento limitado 
 
DESLOCAMENTO:  Flexibilidade 
  complexidade 
Resumo de modos de endereçamento 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
Um processador possui um conjunto de instruções que emprega vários modos 
de endereçamento. Considere que a memória principal possui endereços de 
16 bits e o mapa de memória abaixo. Para cada item diga qual o valor 
obtido. 
 
 
ENDEREÇO CONTEÚDO 
15B9 7C 
15BA 82 
15BB 15 
15BC BE 
15BD 9A 
15BE 75 
EXERCÍCIOS 
a) A instrução possui o modo direto e o 
operando possui o valor 15B9. 
 
b) A instrução usa o modo imediato e o 
operando possui o valor 15BA. 
 
c) A instrução usa o modo indireto e o 
operando possui o valor 15BB. 
 
 
 
 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
Um processador possui um conjunto de instruções que emprega vários modos 
de endereçamento. Considere que a memória principal possui endereços de 
16 bits e o mapa de memória abaixo. Para cada item diga qual o valor 
obtido. 
 
 
ENDEREÇO CONTEÚDO 
15B9 7C 
15BA 82 
15BB 15 
15BC BE 
15BD 9A 
15BE 75 
EXERCÍCIOS 
a) A instrução possui o modo direto e o 
operando possui o valor 15B9. 
7C 
b) A instrução usa o modo imediato e o 
operando possui o valor 15BA. 
15BA 
c) A instrução usa o modo indireto e o 
operando possui o valor 15BB. 
75 
 
 
 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
Considere uma máquina hipotética com as seguintes características: 
Instruções 
0001  Carrega AC da memória 
0010  Armazena AC na memória 
0101  Adiciona ao acumulador AC o valor da memória 
0011  Carrega AC (acumulador) do dispositivo de I/O 
0111  Armazena AC no dispositivo de I/O 
Endereço de 12 bits identifica um dispositivo externo sendo 4 bits para 
código da operação e os demais para endereço 
O dispositivo 5 fornece o valor 3 
PC (Program Counter) inicial contém o valor 300 
O acumulador AC está inicialmente vazio 
O endereço 50h possui o valor 2 armazenado 
Programa em execução 
 
End. Instrução 
300 0011 00000101 
301 0101 01010000 
302 0010 01100000 
EXERCÍCIOS 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
A primeira instrução executada é: 
 1) Carrega o valor 2 no acumulador AC 
 2) Carrega o valor 3 no acumulador AC 
 3) Carrega o valor 50 no acumulador AC 
 4) Inicializa os dispositivos e endereços de memória 
 
O valor final armazenado no acumulador será: 
1) 5 
2) 2 
3) 0 
4) 3 
 
Em que endereço será armazenado o valor 5 que está no AC? 
 
 
Que instrução inicial teríamos que acrescentar ao programa para que 
AC fosse iniciado com o conteúdo do endereço 32h? 
 
EXERCÍCIOS 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
A primeira instrução executada é: 
 1) Carrega o valor 2 no acumulador AC 
 2) Carrega o valor 3 no acumulador AC 
 3) Carrega o valor 50 no acumulador AC 
 4) Inicializa os dispositivos e endereços de memória 
 
O valor final armazenado no acumulador será: 
1) 5 
2) 2 
3) 0 
4) 3 
 
Em que endereço será armazenado o valor 5 que está no AC? 
60h  302 0010 01100000 
 
Que instrução inicial teríamos que acrescentar ao programa para que 
AC fosse iniciado com o conteúdo do endereço 32h? 
0001  Carrega AC da memória 0001 0011 0010 
 
EXERCÍCIOS 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
NeanderWinLINK: http://www.dcc.ufrj.br/~gabriel/neander.php 
 As instruções podem ter um ou dois bytes. 
 Nas instruções com apenas um byte, os 4 bits mais 
significativos contém o código da operação. 
 Nas instruções com dois bytes (referência a um 
operando na memória) o segundo byte contém o 
endereço de memória deste operando. 
 Largura de dados e endereços de 8 bits; 
 Dados representados em complemento a dois; 
 1 acumulador de 8 bits (AC); 
 1 apontador de instruções de 8 bits (PC); 
 1 registrador de código de condição com 2 bits: negativo (N) 
e zero (Z). 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
 
NeanderWin - Modos de Endereçamento 
 
 
- imediato 
 O segundo byte da instrução é o operando. 
 A única instrução que usa este modo de endereçamento é a LDI. 
 
- direto 
 O segundo byte da instrução é o endereço de memória do 
operando. 
 
- indireto 
 O segundo byte da instrução contém o endereço de memória onde 
está o endereço do operando (ou seja, o segundo byte da instrução 
é o endereço do ponteiro para o operando). 
 Para indicar que um operando é indireto, deve-se precedê-lo 
pela letra "@" (at). 
 
 
 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
NeanderWin 
AULA 7 – INSTRUÇÕES 
ORGANIZAÇÃO DE COMPUTADORES 
RESUMINDO 
• Cada processador possui um conjunto de instruções 
específicos 
 
• As instruções são classificadas em: lógico-aritméticas, 
controle e movimentação de dados. 
 
•As instruções possuem quantidade variável de operandos. 
 
• O modo de endereçamento define o significado dos 
operandos de endereço.

Outros materiais

Materiais relacionados

Perguntas relacionadas

Perguntas Recentes