Arquitetura de computadores
Objetivos Gerais
Demonstrar os conceitos genéricos de arquiteturas de computadores (nível ISA) através do uso de algumas arquiteturasexemplo representativas
computadores hipotéticos: simuladores computadores reais: Intel x86
Introduzir o tópico de programação em baixo nível, como ferramenta para o entendimento de arquiteturas de computadores
Arquiteturas estudadas
Computadores hipotéticos (simuladores com finalidade didática):
Neander Ahmes Ramses Cesar
Weber, Raul F. “Fundamentos de Arquitetura de Computadores”. Série de Livros Didáticos do Instituto de Informática da UFRGS, Número 8, 2a. Edição. Sagra-Luzzatto, 2001
Computadores reais:
IBM PC – família Intel x86
O Computador Neander
Largura de dados e endereços: 8 bits
i.e., comprimento de palavra de 8 bits
Dados representados em complemento de 2 1 acumulador de 8 bits (AC)
arquitetura de acumulador
1 apontador de programa de 8 bits (PC) 1 registrador de estado (flags) com 2 códigos de condição:
negativo (N) e zero (Z)
Neander: Formato das Instruções
opcode: 8 bits operando: 8 bits seguintes
especifica um endereço modo direto Endereço
4 3 0 (ignorados)
Memória opcode operando
x: Endereço x+1:
7 opcode
endereço direto Obs.: o segundo byte (operando) ocorre apenas em instruções de manipulação de dados, i.e., que fazem referência à memória
...
Neander: Organização da Memória - Convenções
256 palavras de 8 bits: 256 bytes Primeiros 128 bytes (metade inferior):
Código do programa Dados do programa
128 bytes seguintes (metade superior):
Apenas convenções: dados e código podem ser localizados em qualquer lugar
Mas um não pode invadir a área do outro
Neander: Conjunto de Instruções
Código 0000 0001 0010 0011 0100 0101 0110 1000 1001 1010 1111