Org3
Organização e Arquitetura de computadores
Conjunto de instruções: formatos de instruções e modos de endereçamento
Prof. Dr. Luciano José Senger
– O formato de instruções de uma arquitetura permite especificar, dentre os bits disponíveis para representar uma instrução, a quantidade de bits que será utilizada para o opcode e para os endereços de operandos ou imediatos – Em arquiteturas estruturadas, o tamanho de instruções é fixo e existem poucos formatos (p.e. MIPS tem 3 formatos básicos); arquiteturas não bem estruturadas podem ter vários modos de endereçamento e vários formatos de instruções, inclusive com a utilização de códigos de expansão
Formatos de instruç instruções • Expansão de código de operação:
– Pode-se empregar os campos de operandos para expandir o número de instruções de máquina
– Ex: instruções de 16 bits, endereços de 4 bits, 16 registradores
– 15 instruções de 3 endereços;
– 14 instruções de 2 endereços;
– 31 instruções de 1 endereço;
– 16 instruções sem endereço
Modos de endereç endereçamento Modos de endereç endereçamento • Modos de endereçamento
• Modos de endereçamento – Permitem especificar como os operando estão disponíveis na memória ou no banco de registradores
– Diferentes arquiteturas têm números de modos de endereçamento diferentes
• Tipos comuns
–
–
–
–
–
–
–
Imediato
Direto
Indireto via Registrador
Indireto via Registrador
Indexado
Pilha
como especificar onde estão os operandos? – Ex: Arquitetura hipotética instrução LD carrega o operando para o registrador acumulador
(AC) - instruções através da linguagem RTL;
– XR - registrador especial para endereçamento Assembly
Modo
Ação
–
Direto
LD ADR
AC <- M[ADR]
Indireto
LD @ADR
AC <- M[M[ADR]]
Relativo
LD $ADR
AC <- M[PC + ADR]
Imediato
LD #NBR
AC <- NBR
LD ADR(X)
AC <- M[ADR + XR]
Indexado
LD R1
AC <- R1
Registrador
Registrador indireto
Auto incremento
LD (R1)
AC <- M[R1]
LD (R1)+
AC <- M[R1]; R1 <-