Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Arquitetura de Computadores
Cap. 10 Conjunto de Instruções: Modos de End. e Formatos
2
Modos de Endereçamento
Imediato Direto Indireto Registrador Indireto Via Registrador Deslocamento (Indexação) Pilha 2
3
Endereço Efetivo Sistemas Sem Memória Virtual
Endereço da Memória Principal ou Registrador Sistemas Com Memória Virtual Endereço Virtual ou Mapeamento para Endereço Físico Mecanismo Específico
4
Endereçamento Imediato
Operando é Parte da Instrução Algoritmo Operando = Campo de Endereço Aplicações Típicas Definição e Uso de Constantes Atribuição de Valores Iniciais a Variáveis Nenhuma Referência à Memória Rápido Magnitude Limitada 3
5
Diagrama de End. Imediato
Instrução Opcode Operando 4
6
Endereçamento Direto Campo de Endereço End. do Operando Algoritmo
End. Efetivo (EA) = Campo de End. (A) Referência Única à Memória Sem Cálculos Adicionais para Obter EA Espaço de Endereçamento Limitado 5
7
Diagrama de End. Direto Instrução Opcode Endereço A Memória Operando 6
8
Endereçamento Indireto
Campo de Endereço End. de Palavra na Memória End. do Operando Algoritmo EA = (A) Vantagem Tam. da Palavra = N Espaço de End. 2N Desvantagem 2 Acessos à Memória para Obter Operando 7
9
Diagrama de End. Indireto
Instrução Endereço A Opcode Memória Ponteiro p/Op. Operando 9
10
Endereçamento de Registrador
Semelhante ao End. Direto Campo de Endereço Registrador Onde Está Operando Algoritmo EA = R Tipicamente Campo de End. 3-4 bits __ Registradores? 10
11
Endereçamento de Registrador
Vantagem Tamanho do Campo de End. é Pequeno Instruções Pequenas Não Requer Referência à Memória Busca Mais Rápida Desvantagem Espaço de Endereçamento Limitado 11
12
Diagrama de End. de Registrador
Instrução Opcode End. do Registrador R Registradores Operando 12
13
End. Indireto Via Registrador
Semelhante ao End. Indireto Campo de End. Registrador R com End. do Operando Algoritmo EA = (R) Vantagens e Desvantagens Um Acesso à Memória a Menos 13
14
Diagrama de End. Indireto Via Registrador
Instrução Opcode End. do Registrador R Memória Registradores Ponteiro para Op. Operando 14
15
End. Por Deslocamento Combina Capacidades de End. Direto e Indireto Via Registrador Algoritmo EA = A + (R) Dois Campos de End. A = End. Explícito, Usado Diretamente R = Registrador com Deslocamento 15
16
Diagrama de End. Por Deslocamento
Instrução Opcode Registrador R Endereço A Memória Registradores + Ponteiro para Op. Operando 16
17
End. Por Deslocamento Três Usos Comuns Endereçamento Relativo
End. Via Registrador-Base Indexação
18
End. Por Deslocamento End. Relativo
R = Program Counter, PC EA = A + (PC) Deslocamento Relativo ao End. da Instrução Explora Conceito de Localidade e Uso da Cache Maioria das Referências à Memória Posições Próximas da Instrução Atual Ver Apêndice 4A 17
19
End. Por Deslocamento End. Via Registrador-Base
R = Endereço Base A = Deslocamento Forma Conveniente de Implementar a Segmentação de Memória Referência a R Pode Ser Explícita ou Implícita Ex.: Registradores de Segmento no 80x86 18
20
End. Por Deslocamento Indexação
A = Base R = Deslocamento EA = A + R Conveniente para Acessar Matrizes R++ 19
21
Indexação – Combinações
Pós-Indexação EA = (A) + (R) Pré-Indexação EA = (A+(R)) Diagramas Atividade! 20
22
Endereçamento à Pilha Topo da Pilha (Implicitamente) Operando Pilha
Seqüência Linear de Posições de Memória Bloco Reservado Lista Push-Down Fila LIFO (Last In, First Out) Apontador de Topo da Pilha (Stack Pointer) Registrador Referência à Pilha = End. Indireto Via Registrador 21
23
Formatos de Instrução Disposição de bits da Instrução Inclui
Código de Operação (OpCode) Zero ou Mais Operandos (Implícita ou Explicitamente) Usualmente Mais de Um Formato de Instrução em Um Conjunto de Instrução
24
Formatos de Instrução Questões Fundamentais Tamanho de Instrução
Alocação de bits Instruções de Tamanho Variável
25
Tamanho de Instrução Afeta e É Afetada por
Tamanho da Memória Organização da Memória Estrutura de Barramento Complexidade da CPU Velocidade da CPU Determina Riqueza e Flexibilidade da Máquina para Programador Assembly
26
Tamanho da Instrução Conflito Demanda dos Programadores
Fornecer Repertório de Instruções Poderoso Necessidade de Economizar Espaço Demanda dos Programadores Mais Códigos de Operação Prg. Compacto Mais Operandos Prgs. Mais Compactos Mais Modos de End. Mais Flexibilidade Maior Espaço de Endereçamento
27
Tamanho da Instrução Instruções Maiores = Desperdício?
Espaço Instr. de 32 bits = 2 X Instr. de 16 bits Utilidade É Duas Vezes Maior? Tamanho da Instrução = Unidade de Transferência de Dados Memória-CPU? Nº de Instruções Obtidas em Um Ciclo de Busca
28
Alocação de bits Conflito Uso de OpCodes de Tamanho Variável
Nº de OpCodes Capacidade de Endereçamento Uso de OpCodes de Tamanho Variável Tamanho Mínimo para OpCode
29
Alocação de bits Fatores de Uso dos bits As Escolhas São Críticas?
Número de Modos de Endereçamento Número de Operandos Memória ou Registrador 8 a 32 Registradores Visíveis ao Usuário Número de Conjuntos de Registradores Dois ou Mais: Dados e Deslocamento Faixa de Endereços Granularidade de Endereçamento Tamanho da Palavra X Acesso ao Byte/Palavra As Escolhas São Críticas?
30
Instruções de Tamanho Variável
Instruções de Tamanhos Diferentes X Tamanho Único Custo Principal Complexidade da CPU Tamanhos de Instruções = Múltiplos ou Divisores do Tamanho da Palavra Estratégia Típica: Buscar Sempre o Nº de Bytes do Tamanho da Maior Instrução
31
Pentium Pesquisar Conclusões Modos de Endereçamento
Formatos de Instrução Conclusões Instruction Set = Simples ou Complexa? Compatibilidade e Legado Fornecer ao Desenvolvedor de Compiladores Ferramentas para Produzir Código Eficiente
32
Por onde estudar ? Computer Organization and Architecture
William Stallings Cap. 10
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.