Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Prévia do material em texto

Arquitetura de 
Computadores
 
Computador como Sistema de PD
SAÍDA
ARMAZENAMENTO
ENTRADA PROCESSAMENTO
CONECTIVIDADE
 
 
Dados x Informação x Conhecimento
 
Dado x Informação
Dado
Data nascimeno:16/07/1961
Soma do preço unitário x Quantidade
Medição x Métrica de temperatura = 38oC
Medição x Métrica da Distância: 100.000M
Informação 
Idade: 47 annos
Total da Fatura
Clima quente
Longe
 
Dado x Informação
Conversão de Dados em Informação
Contextualizaçã
o
Categorização
Cálculo
Correção
Condensação
Relacionar dados coletados com outros 
existentes
Separar os dados em categorias
Análise matemática ou estatística
Eliminar erros que os dados possuam
Resumir os dados para uma forma consisa
 
Componentes básicos de um 
computador
 O processador (ou microprocessador) é responsável pelo 
tratamento de informações armazenadas em memória (programas 
em código de máquina e dos dados).
 A memória é responsável pela armazenagem dos programas e dos 
dados. 
 Periféricos, que são os dispositivos responsáveis pelas entradas e 
saídas de dados do computador, ou seja, pelas interações entre o 
computador e o mundo externo. Exemplos de periféricos são o 
monitor, teclados, mouses, impressoras, etc.
 Barramento, que liga todos estes componentes e é uma via de 
comunicação de alto desempenho por onde circulam os dados 
tratados pelo computador 
Memória Processador Periféricos
Barramento
 
Cont.
 
Memória 
 a memória principal, ou memória de trabalho, onde normalmente 
devem estar armazenados os programas e dados a serem 
manipulados pelo processador;
 a memória secundária que permitem armazenar uma maior 
quantidade de dados e instruções por um período de tempo mais 
longo; o disco rígido é o exemplo mais evidente de memória 
secundária de um computador, mas podem ser citados outros 
dispositivos menos recentes como as unidades de fita magnética e 
os cartões perfurados;
 a memória cache, que se constitui de uma pequena porção de 
memória com curto tempo de resposta, normalmente integrada aos 
processadores e que permite incrementar o desempenho durante a 
execução de um programa.
 
Processador
 Um microprocessador, ou simplesmente 
processador, é um circuito integrado (ou 
chip), que é considerado o "cérebro" do 
computador.
 
Processador
 Pode-se dizer que a CPU realiza as seguintes 
tarefas: 
 Busca e executa as instruções existentes na 
memória. Os programas e os dados que ficam 
gravados no disco (disco rígido ou disquetes), 
são transferidos para a memória. Uma vez 
estando na memória, a CPU pode executar os 
programas e processar os dados. 
 Comanda todos os outros chips do computador. 
 
Processador
 A CPU é composta basicamente de três 
elementos: unidade de controle, unidade lógica 
e aritmética e registradores.
 Unidade Lógica e Aritmética (ALU) - Assume 
todas as tarefas relacionadas às operações 
lógicas (ou, e, negação, etc.) e aritméticas 
(adições, subtrações, etc...) a serem realizadas 
no contexto de uma tarefa.
 
Processador
 Unidade de Controle (UC) - assume toda a 
tarefa de controle das ações a serem realizadas 
pelo computador, comandando todos os demais 
componentes de sua arquitetura.
 Registradores - são utilizados para assegurar o 
armazenamento temporário de informações 
importantes para o processamento de uma dada 
instrução. 
 
Processador
A UC gerencia 4 operações básicas:
• Busca(fetch) – Obtém a próxima instrução de 
programa da memória do computador.
• Decodificação – Descobre o que o programa está 
dizendo para o computador fazer
• Execução – Executa a ação solicitada, tal como
somar dois números ou decidir se um deles é maior.
• Gravação – Escreve os resultados para um registro 
interno (um local temporário de armazenamento) ou 
para memória.
Ciclo de instrução( busca e decodificação) e ciclo
de execução (execução e armazenamento)
 
Processador
 
Exemplo de como funciona o 
computador:
 Uso de um programa que faz cálculos matemáticos
 Usuário digita: 10+20*2
 UC recebe estes dados
 UC verifica que precisam ser calculados
 UC envia para a ULA
 ULA realiza o cálculo necessário
 ULA retorna o valor 50 para a UC
 UC armazena na memória
 UC mostra o resultado no dispositivo de saída
 
Clock
 Clock é um circuito oscilador que tem a 
função de sincronizar e ditar a medida de 
velocidade de transferência de dados no 
computador, por exemplo, entre o 
processador e a memória principal. Esta 
freqüência é medida em ciclos por 
segundo, ou Hertz.
 
Barramentos
 Um barramento, ou bus, nada mais é do que 
um caminho comum pelo qual os dados 
trafegam dentro do computador.
 O tamanho de um barramento é importante 
pois ele determina quantos dados podem ser 
transmitidos em uma única vez. Por exemplo, 
um barramento de 16 bits pode transmitir 16 
bits de dado, e um barramento de 32 bits pode 
transmitir 32 bits de dados a cada vez. 
 
Barramentos
 Barramentos Internos: ligam a CPU 
(processador) aos equipamentos que ficam 
dentro do gabinete. 
 Existem diversos tipos de barramentos 
específicos para equipamentos diferentes:
 IDE
 ISA
 PCI
 AGP
 SCSI
 
Barramentos
 Barramento IDE
 Para conectar as unidades de armazenamento internas (HD, Drive 
de CD, Gravadores de CD, Drives de DVD, etc.) à placa-mãe do 
computador.
 Os equipamentos são ligados aos barramentos IDE através 
Cabo FLAT.
 
Barramentos
 Barramento ISA
 Comum em micros mais antigos para encaixar placas de 
expansão, como modems, placas de som, placas de vídeo, 
 Está caindo em desuso por ser relativamente lento em relação 
às novas tecnologias.
 
Barramentos
 Barramento PCI
 PCI: substituto do barramento ISA (nas novas placas-mãe, é 
mais comum encontrar vários slots PCI e apenas alguns 
poucos ISA, quando há ISA).
 
Barramentos
 Barramento AGP
 Apenas para uso de placas de vídeo.
 
Barramentos
 Barramento SCSI
 O SCSI é muito usado em servidores de 
empresas, que normalmente precisam 
de uma maior velocidade de conexão 
com os Discos Rígidos, CDs, unidades 
de fita.
 
Barramentos
 Barramentos Externos
Barramentos externos = portas = interface
Tipos: 
PS/2
Serial
Paralela
USB
Firewire
PCM CIA
 
Barramentos
 Porta PS/2
 É o barramento atualmente usado para conectar 
mouse e teclado. 
 Há duas portas na parte traseira do gabinete, uma 
para o mouse e a outra para o teclado.
 
Barramentos
 Porta Serial
 É um barramento usado por equipamentos que 
transferem relativamente pouca informação, como 
mouses, modems, câmeras (webcam), etc.
 
Barramentos
 Porta Paralela
 Barramento relativamente antigo e está sendo cada vez 
menos utilizado em computadores atuais. A porta paralela 
usa conector DB-25.
 
Barramentos
 Porta USB
 É relativamente novo e vem sendo usado em 
muitos computadores atuais como substituto das 
portas paralela e serial.
 
Barramentos
 Barramento Firewire
 Encontrado apenas nos computadores mais 
novos, o barramento firewire é bastante rápido.
 
Barramentos
 Barramento PCM CIA (PC Card)
 Encontrado em modems, placas de som, placas de 
rede e até discos rígidos portáteis.
 
Dispositivos de Entrada/Saída
 
Placa Mãe
 
Linguagem de Programação
Linguagens de Programação:
Proporcionam ao programador a possibilidade de 
fornecer instruções ao computador através de 
comandos ou sentenças, escritas em uma 
linguagem próxima à linguagem humana, 
permitindo desta forma a criação de novos 
softwares;
Linguagem que o computador entende é a 
linguagem de máquina, composta de 0 e 1.
 
Linguagem de Programação
Cada linguagem de programação obedece à 
regras especificas. As regras de sintaxe de uma 
linguagem de programação definem como são 
expressados as instruções a serem executadas;
BAIXO NÍVEL -Linguagem de Máquina e de 
Montagem. Mais compatíveis com o hardware do 
computador;
ALTO NÍVEL -Linguagens de Compilação e 
interpretação.Similares à nossa linguagem 
natural.
 
Linguagem de Programação
Um compilador tem a finalidade de converter 
uma linguagem – Linguagem Fonte – de fácil 
escrita e leitura para os programadores, numa 
linguagem – Linguagem alvo ou objecto – que 
possa ser executada pelas máquinas.
O código executável gerado pelo compilador é
dependente do sistema operacional e da 
linguagem de máquina para o qual o código fonte 
foi traduzido.
 
Sistema de numeração
O sistema numérico com o qual estamos
acostumados a trabalhar e pensar é o sistema
decimal. Neste sistema os números são formados
por algarismos correspondentes as unidades,
dezenas, centenas, milhares,etc....
É um sistema baseado na analogia de contagem
com os dedos da mão, ou seja dez. A raiz ou
base desse sistema é dez e seus algarismos são:
0 1 2 3 4 5 6 7 8 9
 
Sistema de numeração
O número decimal 234, por exemplo, é obtido
pela soma apresentada a seguir:
234=200+30+4
ou 234=2 x 100 + 3 x 10 + 4 x 1
ou 234=2 x 10 2 + 3 x 10 1 + 4 x 10 0
Você já pensou qual o sistema utilizado para
representar as horas ?
 
Representação dos Dados
Sistema Binário
Os computadores utilizam a base 2 (sistema
binário), utilizando este sistema de numeração,
podemos representar uma informação com
apenas dois valores.
Os valores 0 e 1 são utilizados para representar
situações lógicas.
Binary Digity - BIT
 
Representação dos Dados
Sistema Hexadecimal
O sistema de números hexadecimal usa a base
16, o que indica o uso de dezesseis símbolos, sendo os 
mesmos símbolos usados no sistema decimal mais as 
seis primeiras letras do alfabeto.
Os algarismos utilizados no sistema hexadecimal são:
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
As seis primeiras letras do alfabeto, utilizadas no 
sistema hexadecimal como números representam as 
seguintes quantidades:
A=10 B=11 C=12 D=13 E=14 F=15
 
Representação de Dados - exercícios
1. Faça as converções
a) (B10)16 = ? 10 ? 2
b) (11000110)2 = ? 10 ? 16
c) (173) = ? 2
d) (FF) 16 = ? 10 ? 2
e) (192)16 = ? 10 ? 2 
2. Efetue as somas abaixo:
a) (1001)2 + (11) 2
b) (1AE) 16 + (292) 16
 
Números negativos na base binária?
Sinal de magnitude
Complemento de 1
Complemento de 2
 
Exercícios - Para o dia 26/09;2011
Introdução a Organização de Computadores
Mário Monteiro
Conversão de base e aritmética 
computacional
Pág. 73 (1, 2,3, 4)
Pág. 74 (5, 8, 9,10, 11) 
Pág. 75 (12, 13,14,1516,17 )
Pág. 76 (18 a 30)
 
Álgebra Booleana
Desenvolvida pelo matemático britânico George 
Boole para estudo da lógica.
Definida sobre um conjunto de dois elementos:
(falso, verdadeiro) (0, 1) (baixo, alto)
Seus elementos, a princípio, não tem significado 
numérico.
Postulados: se x é uma variável boleana então:
Se x ≠ 0 ⇒ x = 1
Se x ≠ 1 ⇒ x = 0
 
Álgebra Booleana
Uma variável boleana só pode assumir apenas um 
dos valores possíveis (0 e 1)
Uma ou mais variáveis e operadores podem ser 
combinados formando uma função lógica
Z1(A) = f(A) = ... (expressão usando var. A)
Z2(A,B) = f(A,B) = ... (expr. usando var. A e B)
Resultados de uma função lógica podem ser 
expressos numa tabela relacionando todas as 
combinações possíveis dos valores que suas 
variáveis podem assumir e seus resultados 
correspondentes: a Tabela-Verdade.
 
Álgebra de Boole: Tabela Verdade
0
1
A B Z=f(A,B)
0
0
01
1 1
Lista das 
combinaç
ões 
possíveis 
dos 
estados 
das 
variáveis 
de 
entrada
Variáv
eis
Função 
Lógica
Resultados 
da função 
lógica para 
cada 
combinação 
dos estados 
de entrada
1
0
1
1
Tabela-Verdade relaciona os resultados (saída) 
de uma função lógica para todas as 
combinações possíveis de suas variáveis 
(entrada).
Na Tabela-Verdade acima a função lógica Z 
possui duas variáveis A e B, sendo Z = f(A, B) 
= A + B
 
Álgebra de Boole: operações
São definidas algumas operações elementares 
na álgebra boleana:
Operação “Não” (NOT)
Operação “E” (AND)
Operação “Ou” (OR)
NAND
NOR
Operação “Ou-Exclusivo” (Exclusive-Or ou 
XOR)
 
Álgebra booleana
Tabela Verdade: (0)Falso (1)Verdade
A B Not A A AND B A OR B A XOR B A NAND B A NOR B
0 0
0 1
1 0
1 1 
 
Álgebra booleana
 Faça a tabela verdade para as seguintes 
expressões booleanas (Observação: o sinal 
* significa AND; + significa OR e ~significa 
NOT): 
A*B*C + ~(A*B*C) 
A*(~C + B + ~D) 
A*B + A*(~C) 
 
Exemplo de um sinal binário
 
Portas lógicas Gate
 É um circuito eletrônico que constitui no 
elemento básico e mais elementar de um 
sistema de computação.
 
Portas e operações lógicas
Enquanto cada elemento lógico ou condição é representado por um 
valor “0” ou “1”, faz-se necessário que tenhamos meios de 
combinar diferentes sinais lógicos ou condições para gerar um 
resultado útil.
Uma porta lógica (“gate”) é um circuito eletrônico, portanto uma peça 
de hardware, que se constitui no elemento básico mais elementar 
de um sistema de computação. Grande parte do hardware do 
sistema é fabricado através da adequada combinação de milhões 
desses elementos.
Tabela Verdade
São tabelas que representam todas as possíveis combinações das 
variáveis de entrada de uma função, e os seus respectivos valores 
de saída. 
Uma tabela verdade possui, então, tantas linhas de informação 
quantas são as possíveis combinações de valores de entrada que 
se tenha.
Operadores Lógicos
Uma operação lógica realizada sobre um ou mais valores lógicos 
produz um certo resultado (também um valor lógico), conforme a 
regra definida para a operação lógica.
 
Portas lógicas (gates)
 
Porta lógica AND - E
• A porta AND combina dois ou mais sinais de 
entrada de forma equivalente a um circuito em série, 
para produzir um único sinal de saída, ou seja, ela 
produz uma saída 1, se todos os sinais de entrada 
forem 1; caso qualquer um dos sinais de entrada for 
0, a porta AND produzirá um sinal de saída igual a 
zero.
 
Exemplo de utilização da porta AND
 
Porta lógica OR - OU
• A porta OR é definida para produzir um 
resultado verdade (=1) na sua saída, se pelo 
menos uma das entradas for verdade.
 
Porta lógica NOT – NÃO (inversor)
• A porta NOT é um circuito lógico que requer apenas 
um valor na entrada: inverte o sinal de entrada 
(executa a negação do sinal de entrada), ou seja, se o 
sinal de entrada for 0 ela produz uma saída 1, se a 
entrada for 1 ela produz uma saída 0.
 
Porta NAND – NOT AND
• A porta NAND equivale a uma porta AND seguida 
por uma porta NOT, isto é, ela produz uma saída que é 
o inverso da saída produzida pela porta AND. Esta 
porta produzirá uma saída falsa se e somente se todas 
as entradas forem verdade.
 
Porta NOR – NOT OR
• A porta NOR equivale a uma porta OR seguida por uma porta 
NOT, isto é, ela produz uma saída que é o inverso da saída 
produzida pela porta OR. Esta porta produzirá uma saída 
verdade se e somente se todas as entradas forem falsas.
 
Porta XOR – Exclusive OR
• A porta (ou operação lógica) XOR, abreviação do 
termo EXCLUSIVE OR, pode ser considerada um 
caso particular da função OR, ou seja, sua definição: 
“a saída será verdade se exclusivamente uma ou 
outra entrada for verdade”. A porta XOR compara os 
bits: ela produz saída 0 quando todos os bits de 
entrada são iguais e saída 1 quando pelo menos um 
dos bits de entrada é diferente dos demais.
 
Exemplo de emprego de circuitos XOR para teste 
de igualdade entre palavras
 
Expressões lógicas – aplicações de portas
• Uma expressão lógica ou função lógica pode ser definida 
como sendo uma expressão algébrica formada por variáveis 
lógicas (binárias), por símbolos representativos de uma 
operação lógica (+, ., etc.), por parênteses (às vezes) e por um 
sinal de igual.
F = X + Y .Z - Expressão lógica da 
função F
Diagrama lógico da 
função F
Tabela verdade da 
função F
 
Cálculo de expressões lógicas
 Assim como podemos obter todos os possíveis resultados 
de uma expressão lógica para cada um dos valores de 
entrada componentes da expressão (através daconstrução 
progressiva da tabela verdade), também poderemos obter 
o valor da expressão para um valor específico de cada 
uma das entradas (usar apenas uma linha da tabela 
verdade).
 Na avaliação de uma expressão lógica, as seguintes 
regras devem ser seguidas:
a) Uma expressão pode ou não conter parênteses; quando 
contêm, eles têm a mesma prioridade que nos cálculos da 
álgebra comum;
b) A prioridade da operação AND é maior que a do cálculo 
de uma operação OR, como na aritmética comum. Assim: 
X+Y .Z = X + (Y .Z)
c) A prioridade da operação OR é maior que a operação 
XOR
 
Álgebra Booleana
• Álgebra Booleana é uma área da Matemática que trata de regras e elementos de 
Lógica. O projeto de elementos digitais está relacionado com a conversão de 
idéias em hardware real, e os elementos encontrados na álgebra booleana 
permitem que uma idéia, uma afirmação, possa ser expressa matematicamente. 
Permitem também que a expressão resultante da formulação matemática da idéia 
possa ser simplificada e, finalmente, convertida no mundo real do hardware de 
portas lógicas e outros elementos digitais.
 
Faça a tabela verdade
 
Calcule o valor de X para as expressões
 
Máquina de John von Neumann
Programa e dados são armazenados juntos 
na memória principal;
O programa é executado seqüencialmente;
A memória é endereçável.
 
Instruções e dados armazenados na memória 
indistintamente. 
Uma palavra escolhida aleatoriamente na 
memória não pode ser identificada como 
uma instrução ou um palavra de dado.
O significado de uma palavra é determinado 
pela maneira como o processador vai 
interpreta-la.
 
Modelo de von Neumann
Acumulador - registrador que armazena o 
primeiro operando da instrução;
Instruções especificam apenas o segundo 
operando.
O resultado é armazenado no acumulador.
 
Memória
 Memória R
 E
 M
barramento de
endereços
 R D MDecodifica
dor
RDM - registrador de dados da memória
REM - registrador de endereços da memória
Barramento de dados
 
Acesso a memória
O Registrador de Endereços da Memória 
(REM) armazena o endereço da palavra de 
memória durante um acesso (leitura ou 
escrita);
O Registrador de Dados da Memória (RDM) 
armazena o conteúdo da palavra de memória 
lida em uma operação de leitura ou que será 
escrita na memória;
O endereço é decodificado para localizar a 
palavra a ser acessada.
 
Palavra de memória
O tamanho do RDM determinará a quantidade 
de bits que poderá ser transferida em um 
único acesso a memória - o tamanho da 
palavra de memória;
O tamanho do REM determinará o tamanho do 
espaço de endereçamento da memória, ou 
seja, a quantidade de palavras que poderão 
ser endereçadas;
O RDM determinará a largura do barramento 
de dados;
O REM determinará a largura do barramento 
de endereços.
 
Modelo de von Neumann
Quantidade de acesso a memória é muito 
grande: necessita acessar a memória 
para buscar a instrução e operandos e 
armazenar resultados.
Tempo de acesso à memória é muito 
grande → decodificação do endereço e 
transferência do dado.
 
Utilização de registradores de uso geral:
reduz a quantidade de acessos à memória 
principal;
armazenar dados - resultados de operações, 
endereços e operandos de instrução que 
estão sendo utilizados várias vezes (resolver 
uma expressão; variável de controle de uma 
estrutura “for”);
acesso mais rápido ao dado - os registradores 
estão contidos dentro da UCP;
 
Unidade de Controle
Responsável por gerar os sinais de controle 
necessários para a busca e execução das 
instruções, além de coordenar outras 
unidades como memória e dispositivos de 
entrada e saída de dados.
 
Unidade de Controle
Síncrona ou Assíncrona 
Assíncrona: as operações são executadas 
independentemente. Ao término de uma, 
começa a próxima.
Síncrona: existe um circuito oscilador 
responsável por gerar uma referência de 
tempo para realização das operações - 
CLOCK.
 
Organização da Unidade de 
Controle
Por circuito (ou lógica fixa);
Microprogramada
Por circuito: existem circuitos específicos 
para execução das operações.
Microprogramada: para cada instrução 
existe um microprograma.
 
Exercícios
Quais os princípios da máquina de von Neumann ?
Compare a máquina de von Neumann com as 
máquinas anteriores ?
Quais os componentes da Unidade Central de 
Processamento (UCP) ?
Quais as funções da unidade de controle ?
As máquinas que possuem clock são ditas:....
Qual a função do clock ?
O que é um registrador ?
De que são construídos registradores ?
Qual a função dos registradores na UCP ?
Quais as funções dos registradores RI e CI ?
Quais as funções dos registradores RDM e REM ?
Pesquisar as caracterisiticas da máquina de Turing
 
Linguagem de Máquina
Conjunto de código binários que a unidade 
de controle é capaz de decodificar e 
executar;
É formada pela conjunto de instruções da 
máquina;
É específica de cada máquina (ou família de 
máquinas).
 
Linguagem de Montagem 
(Assembly)
Associa símbolos aos códigos binários;
Cada símbolo representa uma instrução (ou 
pseudo-instrução);
Símbolo representa a operação associada: 
ADD - adição; SUB - subtração ...
São mnemônicos;
É específica da máquina.
 
Montador (Assembler)
Responsável por gerar um programa em 
linguagem de máquina a partir de um 
programa escrito em linguagem de 
montagem;
Símbolos → instruções de máquina
ADD M → 00110000001100
 
Linguagens de alto-nível
PASCAL, C, FORTRAN, Algol, Visual AGE, 
Small Talk, Java, Modula, ADA ...
Possuem construções mais complexas - while, 
for, repeat ...
Programas independentes da máquina;
Possuem uma estrutura bem definida.
 
 
Compilador
Traduzir um programa escrito em uma 
linguagem de alto nível na linguagem da 
máquina alvo (linguagem de máquina);
Verificar se os comandos estão 
corretamente construídos; se pertencem a 
estrutura da linguagem; gerar instruções 
de máquina;
Um comando em uma linguagem de A-N 
pode gerar várias instruções de máquina - 
 for i := 1 to 200 do
 
Interpretador
Interpreta (analisa) os comandos de um 
programa (um de cada vez) e executa as 
operações especificadas;
BASIC
 
Formato das Instruções
Máquinas com registradores de uso geral, os 
operandos e resultados das instruções podem 
residir em registradores;
A instrução especifica o(s) registrador(es) que 
contém os operandos;
Instruções mais curtas;
Menos acessos a memória.
 
Formato das instruções (cont.)
Máquinas de um endereço: a instrução 
especifica apenas o segundo operando;
Máquinas de dois endereços: a instrução 
especifica os dois operandos e o resultado 
é armazenado no lugar do primeiro 
operando;
Máquinas de três endereços: a instrução 
especifica os operandos e o resultado da 
operação.
 
Formato das Instruções
 
X = A * (B + C * D – E / F)
Três operandos
 
X = A * (B + C * D – E / F)
Dois operandos
 
X = A * (B + C * D – E / F)
Um operando
 
Operações primitivas
 
Modos de endereçamento
Facilitar a atividade de programação;
Reduzir a quantidade bits (tamanho) da 
instrução.
 
Modos de endereçamento (cont.)
 Modo de endereçamento imediato: o 
operando está contido na própria 
instrução;
 
Modos de endereçamento (cont.)
 Modo de endereçamento direto: o campo de 
endereço da instrução especifica o endereço 
do operando na memória;
 
Modos de endereçamento (cont.)
 Modo de endereçamento indireto: o campo 
de endereço da instrução especifica a 
palavra de memória que contém o endereço 
do operando na memória;
 
Modos de endereçamento (cont.)
 Modo registrador: o campo de endereço contém o 
endereço de um registrador e não uma célula de 
memória;
 
Modos de endereçamento (cont.)
 Modo indexado: existe um registrador que é 
utilizado como índice para cálculo do endereço 
efetivo (físico).
 Modo registrador base (ou base+deslocamento): o 
campo de endereço contém o endereço do 
operando em relação a um endereço base;Exercícios
 Um computador tem uma REM de 16 bit´s e 
um barramento de dados de 20 bit's, possui 
instruções de um operando, todas do 
tamanho de uma célula de memória e do 
mesmo tamanho da palavra, Esse 
computador foi adquirido com 4K de 
memória.
a) Qual o tamanho em bit-s do RDM e do CI
b) Seria possível aumentar a capacidade de 
armazenamento da memória e em quanto?
 
Exercícios
Considere um computador que possua uma 
CPU com CI de 16 bit´s e RI de 38 bit´s. 
Suas instruções tem dois operandos do 
mesmo tamanho (16 bit´s) além do código da 
instrução.
a)Qual o tamanho da instrução
b) Qual o tamanho do código da operação
 
Memória Principal Vs. Cache
O fichário representa o 
disco rígido.
A pasta sobre a mesa 
representa a memória 
principal.
No quadro de avisos se 
encontram informações 
que podem ser 
acessadas de forma 
muito rápida. O quadro 
representa a cache.
Mesa e usuário são a 
CPU
Pasta
Quadro
Fichário
 
Motivação para hierarquia
Principio da localidade + Relação 
custo/desempenho das tecnologias 
Alto desempenho da CPU
CPU
Registradores
C
a
c
h
e
Memória
Principal
Memória
Secundária
Barramento
de memória
Barramento 
de E/S
 
Princípio da Localidade
Localidade Temporal 
Num futuro próximo, o programa irá 
referenciar os programas e dados 
referenciados recentemente
Localidade Espacial
Num futuro próximo, o programa irá 
referenciar os programas e objetos 
de dados que tenham endereços 
próximos das últimas referências.
 
 Hierarquia de Memória
cache (L1)
CPU
Registradores
memória principal
memória secundária
Custo e
tamanh
o
chip
cache (L2)
VelocidadeReg.
Cache
Principal
Cache de Disco
Disco Magnético
Fita CD-ROM
 
Níveis de memória
Nível 1 2 3 4
Nome Registrador Cache Memória
Principal
Secundária
Tamanho < 1K < 4 M < 4 G > 1 G
Tecnologia BICMOS SRAM DRAM Disco
Tempo de
acesso (ns)
2-5 3-10 80-400 5.000.000
Largura de
banda(MB/s)
4000-32.000 800-5000 400-2000 4-32
Gerência Compilador Hardware S.O S.O /
usuário
Copia em Cache Memória
Principal
Disco Fita
 
Características da Memória Cache
Organização
Tamanho do Bloco
Tipos de mapeamento
Direto
Associativo
Associativo por conjunto
Estratégias de substituição
Random
First-in-first-out (FIFO)
Least-recently used (LRU)
Least-frequently used (LFU)
nEstratégia de Escrita
• Write through
• Write back
nNúm. de Caches
• Single X Two-level
• Unified X Split
 
Avanços em implementação de caches
Sincronizada ao clock do sistema
Os sinais são sincronizados ao clock.
Simplifica o projeto da memória
Burst
Incorpora controle interno que permite acesso 
rápido a posições subsequentes (ex. reg. e 
gerador de endereços)
Pipelining
Usa registradores na entrada e/ou saída o que 
permite fornecer dados e acessar novos 
endereços em paralelo.
 
Async SRAM
• A mais antiga
• É mais rápida que a DRAM apenas por ser 
estática.
• 20, 15 or 12 ns.
• Não é suficientemente rápida para permitir 
acesso síncrono.
 
SB SRAM - Syncronous Burst SRAM
• 8.5ns to 12ns
• Acesso em page mode
– 2/1/1/1 em 66 MHz
– 3/2/2/2 em > 66 MHz
• Para velocidadades de barramento até 66 
MHz, SB SRAM apresenta a melhor 
performance.
 
PB SRAM - Pipeline Burst SRAM (cache)
• Usa registradores na entrada ou saída. 
• Gasta um clock a mais para carregar o 
registrador, mas depois permite acesso 
simultâneo a novas posições de memória 
enquanto os dados estão sendo lidos na saída.
• Acesso page mode 3/1/1/1.
• Mais lenta que SB SRAM em bus < 66MHz.
Melhor se > 66MHz.
• 4.5ns to 8ns.
 
Velocidade de Acesso a 
Memórias Cache
Vel.
Bus
(MHz)
33 50 60 66 75 83 100 125
Async
SRAM
2/1/1/1 3/2/2/2 3/2/2/2 3/2/2/2 3/2/2/2 3/2/2/2 3/2/2/2 3/2/2/2
Sync
SRAM
2/1/1/1 2/1/1/1 2/1/1/1 2/1/1/1 3/2/2/2 3/2/2/2 3/2/2/2 3/2/2/2
PB
SRAM
3/1/1/1 3/1/1/1 3/1/1/1 3/1/1/1 3/1/1/1 3/1/1/1 3/1/1/1 3/1/1/1
A melhor memória para cada velocidade de barramento
 
Memória Cache:Tipos de Mapeamento
0 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
...
30
31
Memória principal
Memória cache
0
1
2
3
4
5
6
7
Blocos
ou
Linhas
Offset:
identifica palavras em uma linha
 
Mapeamento Direto
0 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
...
31
Memória principal
Memória cache
0 (000)
1 (001)
2 (010)
3 (011)
4 (100)
5 (101)
6 (110)
7 (111)
Endereço da palavra
Tag Linha Offset
Exemplo: End. linha = 12 mod 8 
= 4
 tag = 12 / 8  = 1
Offset0000...01 100
Cada linha na mem. principal tem uma posição fixa na cache
• End. linha = ELMP mod NLC
 onde ELMP = endereço linha mem. principal
 NLC = núm. linhas da cache
• Tag = ELMP / NLC (Informa qual linha da mem. principal está 
 armazenada na linha de cache 
correspondente)
• Offset cache = Offset Mem. Principal 
Offset
01
dados tag linha
 
Mapeamento direto
 
 Mapeamento Associativo
0 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
...
31
Memória principal
Memória cache
Endereço da palavra
Tag Offset
Exemplo: tag = 12 (011002) 
Offset000000...01100
Uma linha na memória principal pode ocupar 
qualquer posição na cache 
• Tag ⇒ armazena na cache o end. da linha na 
mem. principal
• Offset cache = Offset Mem. Principal 
Offset
01100
dados tag
 
Mapeamento Associativo
 
Mapeamento Associativo por Conjunto
0 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
...
31
Memória principal
Memória cache
Exemplo: two-way set 
associative
 tag = 12 / 4 
= 3 (0112))
 set = 12 
mod 4 = 0 
Uma linha na memória principal pode ocupar qualquer posição dentro de 
um conjunto definido de linhas da cache
 
• Tag =  ELMP / NCC 
• Set = ELMP mod NCC
 onde ELMP = endereço linha mem. 
principal
 NCC = núm. conjuntos da cache
• Offset cache = Offset Mem. Principal 
011
dados tag
Endereço da palavra
Tag set Offset
Offset 011 00
{
{
{
{
Conjuntos (sets)
 
Mapeamento Associativo por Conjunto
 
Comparação de Métodos de Mapeamento
Mapeamento direto
Simples e BarataSimples e Barata
Mais faltas
Associativa
RápidaRápida
Menos faltaMenos falta
Cara (comparação 
do endereço em 
paralelo)
Associativa por conjunto: combinação das anteriores
Se NCC = NLC ⇒ Ass. por conjunto = Mapeamento 
Direto
Se NCC = 1 ⇒ Ass. por conjunto = Associativa
NLC = núm. linhas da cache
NCC = núm. conjuntos da cache
 
Políticas de Substituição de Páginas
Randômica:
Simples e fácil de implementar
FIFO (First-In-First-Out)
LFU (Least-Frequently Used)
LRU (least-recently used) 
Menor taxa de faltas
Associatividade
2 way 4-way 8-way
Size LRU random LRU random LRU random
16 KB 5.18 5.69 4.67 5.29 4.39 4.96
64 KB 1.88 2.01 1.54 1.66 1.39 1.53
256KB 1.15 1.17 1.13 1.13 1.12 1.12
 
Leitura/Escrita da Cache
Leitura:
 Mais frequentes, rápidas e fáceis de implementar
Escrita:
Mais lentas e complicadas e consistência de dados 
com a memória principal deve ser mantida (se 
uma página da cache foi alterada pela CPU, não 
pode ser descartado da cache sem garantir que 
foi copiada para a página correspondente na 
mem. principal)
 
Políticas de Escrita e Consistência
Write through 
Cache e memória são atualizadas 
simultaneamente
Write back 
Memória principal é atualizada quando bloco é 
substituído
Usa dirty bit para marcar linhas alteradas na 
cache.
 
Memória Cache: escrita
Write through Write back
facilidade de
implementação
consistência da memória
principal
redução de tráfego com
memória
nPara se evitar espera durante escrita:
êWrite buffers
 
Exercícios
 A seguir está uma lista de endereços de 
memória de 32 bits requisitados por um 
processador. 
 1, 134, 212, 1, 135, 213, 162, 161, 2, 44, 41,221 
 Assumindo que a cache está inicialmente vazia, 
diga se cada acesso à memória cache é bem 
sucedido (hit) ou falha (miss).
• Mapeamento direto com 16 blocos de 1 palavra. 
• Mapeamento por conjunto e associativo
 
A Arquitetura: conjunto de instruções
código instruçãocomentário
0000 NOP Nenhuma operação 
0001 STA end MEM(end) ← AC
0010 LDA end AC ← MEM(end)
0011 ADD end AC ← MEM(end) + AC
0100 OR end AC ← MEM(end) OR AC
0101 AND end AC ← MEM(end) AND AC
0110 NOT AC ← NOT AC
1000 JMP end PC ← end
1001 JN end IF N=1 THEN PC ← end
1010 JZ end IF Z=1 THEN PC ← end
1111 HLT pára processamento
 
 
Sub-sistema de E/S
Componentes
Interfaces de entrada e saída
Dispositivos periféricos
 ⇒ comunicação
 ⇒ organização típica
Técnicas de transferência de dados
polling
interrupção
DMA (Direct Memory Access)
 
SubSistema de E/S
Funções:
Receber ou enviar informações ao meio 
exterior
Converter as informações (E/S) em uma 
forma intelígivel.
 
SubSistema de E/S
Observações ao projetar uma interface de E/S
Taxas de transmissão diferenciadas;
Atividades de E/S não são sincronizadas;
Cumprimento diferenciado das linhas de conexão 
entre periféricos;
Características diferenciadas: velocidade, quantidade 
de bits enviados, controle no envio dos bits;
 
SubSistema de E/S
Transmissão serial e Paralela;
Transmissão Assíncrona e síncrona.
 
Interação entre Processador e 
Interfaces de E/S
Interfaces de E/S são conectadas ao 
processador através de barramentos
endereço
dados 
controle
Semelhante a interação entre processador e 
memória principal
Acessos
 ⇒ leitura
 ⇒ escrita
 
Interação entre Processador e 
Interfaces de E/S
Leitura: processador obtém
dado recebido do dispositivo periférico
informação de estado sobre uma operação de e/s 
em andamento ou recém-completada 
Escrita: processador fornece
à interface um dado que deve ser enviado ao 
dispositivo periférico
código de um comando que inicia uma operação 
de e/s 
operação de controle sobre dispositivo periférico
 
Interação entre Processador e 
E/S 
Processador
Memória
Cache
Endereço
Dados
Controle
Memória
Principal
sub-sistema de memória
Disco
.
Vídeo Rede
Interface
de E/S
Interface
de E/S
Interface
de E/S
Sub-sistema de E/S
 
Interação entre Processador e 
Interfaces de E/S
Interface é identificada por um endereço único
Processador executa ciclos de barramento
Leitura
endereço da interface no barramento de endereços
ativa um sinal de leitura 
a interface coloca a informação desejada no 
barramento de dados
processador finaliza o ciclo de barramento 
• lendo a informação presente no barramento 
de dados 
• retirando o endereço e o sinal de controle
 
Interação entre Processador e 
Interfaces de E/S
Escrita
endereço da interface no barramento de endereços
fornece dado no barramento de dados 
ativa um sinal de escrita
interface selecionada armazena a informação 
presente no barramento de dados
processador finaliza o ciclo de barramento 
• retirando o endereço, dado e o sinal de 
controle
 
Organização Típica de uma 
Interface de E/S 
Parte Genérica
Parte Específica
Dados
Sinais de
Controle
Reg Dados
Reg Controle
Reg Estado
Endereço
Dados
Controle
Função ⇒ tornar transparente para o 
processador os detalhes de operação e 
controle dos dispositivos periféricos
Duas partes ⇒ genérica e específica
 
Técnicas de Transferência de 
Dados
Entrada e Saída com Polling
puramente em software
simples 
pouco eficiente
só para sistemas dedicados
 
E/S com Polling 
selecione
trilha/setor
escreva byte no
registrador de dados
leia
registrador de estado
done bit ativado?
último dado?
fim da operação
sim
sim
não
não
e operação
 
Técnicas de Transferência de 
Dados
Entrada e Saída com Interrupção
hardware + software
mais eficiente do que E/S com Polling
duas fases
• disparo da operação 
• transferência de dados
 
E/S com Interrupção 
Disparo da
Operação de E/S
Transferência
de Dados
interrupção
último byte
já enviado?
escreva byte no
registrador de dados
não
sim
fim da operação
leia
registrador de estado
rotina de
serviço de interrupção
envie trilha, setor
e código da operação
 
Técnicas de Transferência de 
Dados
Entrada e Saída com Interrupção
pedido de interrupção
chama rotina de serviço de interrupção
controlador de interrupções
tabela de vetores de interrupção 
tempo de latência de interrupção
 
Controlador de Interrupção 
Controlador de
Interrupção
Brramento de
Dados
Interface
de E/S
Interface
de E/S
...
...
INT
80x86
INT
 
Técnicas de Transferência de 
Dados
Entrada e Saída com Acesso Direto à Memória (DMA)
maior taxa de transferência de dados
controlador de DMA
• vários canais ⇒ sinais de controle para os 
dispositivos periféricos
• arbitração de pedidos
 
E/S com DMA 
Controlador
DMA
Processador Memória
Interface de
E/S
PDMAPBAR
LIVRE
 
Padrões de Barramento
Barramento de sistema
 ⇒ processador-memória: curtos, rápidos, 
relação forte com o sistema de memória
 ⇒ entrada-saída: mais longos, ampla faixa 
de banda passante, relação com os 
dispositivos periféricos
 ⇒ backplane: projetados para que 
processador memória e entrada e saída 
coexistam
 
Projeto de um Sistema de E/S
Duas restrições principais
latência ⇒ limites aceitáveis para se 
completar uma operação de entrada e saída
banda passante ⇒ dada uma carga de 
trabalho, o sistema deve se manter 
balanceado
 
Projeto de um Sistema de E/S
Medidas de Desempenho
taxa de transferência de dados
latência
MB/s
benchmarks 
• supercomputadores ⇒ throughput
• processamento de transações ⇒ tempo 
de resposta do sistema de arquivos 
 
A Arquitetura: formato das instruções
As instruções do Neander possuem um ou dois 
bytes (ocupam uma ou duas posições de memória)
código da oper. don’t care
7 4 3 0
endereço direto
código da oper. don’t care
7 4 3 0
Instruções com um byte:
NOP, NOT
Instruções com dois bytes:
STA, LDA, ADD, OR, AND, 
JMP, JN, JZ
 
A Arquitetura: características gerais
Largura de dados e endereços de 8 bits
Dados representados em complemento de 2
1 acumulador de 8 bits (AC)
1 apontador de programa de 8 bits (PC)
1 registrador de estado com 2 códigos de 
condição: negativo (N) e zero (Z)
 
A Organização: alguns elementos necessários
Um registrador de 8 bits para servir de acumulador
Um registrador de 8 bits para o PC (registrador-
contador)
Dois flip-flops: um para o código de condição N e 
outro para Z
Uma memória de 256 posições (endereços) x 8 bits
 
A Arquitetura: o ciclo de busca (fetch)
Decodifica 
instrução
Busca 
instrução
Executa/
Busca operandos
A Arquitetura: o ciclo de execução
 
Arquitetura/Organização: transferências entre regs.
Novo elemento é necessário: o registrador de instrução (RI)
MEM(PC) corresponde a um acesso à memória, usando o 
conteúdo do PC como fonte do endereço
A fase de busca: é igual para todas as instruções
RI ← MEM(PC)
PC ← PC + 1
 
Arquitetura/Organização: transferências entre regs.
Instrução NOP (nenhuma operação)
Simbólico: NOP
RT: -
Passos no nível RT:
Busca: RI ← 
MEM(PC)
PC ← PC + 1
Execução: nenhuma 
operação
NOP Don’t care
7 4 3 0
As transferências indicam quais caminhos de dados devem 
existir, mas não indicam os caminhos físicos reais entre os 
elementos (registradores e ULA)
 
Arquitetura/Organização: transferências entre regs.
Instrução STA (armazena acumulador)
Simbólico: STA end
RT: MEM(end) ← AC
Passos no nível RT:
Busca: RI ← 
MEM(PC)
PC ← PC + 1
Execução: end ← 
MEM(PC)
PC ← PC + 1
MEM(end) ← 
AC
STA Don’t care
end
7 4 3 0
 
Arquitetura/Organização: transferências entre regs.
Instrução LDA (carrega acumulador)
Simbólico: LDA end
RT: AC ← MEM(end)
Passos no nível RT:
Busca: RI ← MEM(PC)
PC ← PC + 1
Execução: end ← MEM(PC)
PC ← PC + 1
AC ← MEM(end); 
atualiza N e Z
LDA Don’t care
end
7 4 3 0
 
Arquitetura/Organização: transferências entre regs.
Instrução ADD (soma)
Simbólico: ADD end
RT: AC ← MEM(end) + AC
Passos no nível RT:
Busca: RI ← MEM(PC)
PC ← PC + 1
Execução: end ← MEM(PC)
PC ← PC + 1
AC ← AC + MEM(end); 
atualiza N e Z
ADD Don’t care
end
7 4 3 0
 
Arquitetura/Organização: transferências entreregs.
Instrução OR (“ou” lógico, bit a bit)
Simbólico: OR end
RT: AC ← MEM(end) OR AC
Passos no nível RT:
Busca: RI ← MEM(PC)
PC ← PC + 1
Execução: end ← MEM(PC)
PC ← PC + 1
AC ← AC OR MEM(end); 
atualiza N e Z
OR Don’t care
end
7 4 3 0
 
Arquitetura/Organização: transferências entre regs.
Instrução AND (“e” lógico, bit a bit)
Simbólico: AND end
RT: AC ← MEM(end) AND AC
Passos no nível RT:
Busca: RI ← MEM(PC)
PC ← PC + 1
Execução: end ← MEM(PC)
PC ← PC + 1
AC ← AC AND MEM(end); 
atualiza N e Z
AND Don’t care
end
7 4 3 0
 
Arquitetura/Organização: transferências entre regs.
Instrução NOT (complementa acumulador)
Simbólico: NOT
RT: AC ← NOT AC
Passos no nível RT:
Busca: RI ← MEM(PC)
PC ← PC + 1
Execução: AC ← NOT(AC); atualiza N e 
Z
NOT Don’t care
7 4 3 0
 
Arquitetura/Organização: transferências entre regs.
Instrução JMP (desvio incondicional - jump)
Simbólico: JMP end
RT: PC ← end
Passos no nível RT:
Busca: RI ← 
MEM(PC)
PC ← PC + 1
Execução: end ← 
MEM(PC)
PC ← end
JMP Don’t care
end
7 4 3 0
 
Arquitetura/Organização: transferências entre regs.
Instrução JN (desvio condicional - jump on negative)
Simbólico: JN end
RT: IF N = 1 THEN PC ← end
Passos no nível RT:
Se N=1 (desvio ocorre) 
Busca: RI ← 
MEM(PC)
PC ← PC + 1
Execução: end ← 
MEM(PC)
PC ← end
JN Don’t care
end
7 4 3 0
Se N=0 (desvio não ocorre) 
Busca: RI ← 
MEM(PC)
PC ← PC + 1
Execução: end ← 
MEM(PC)
PC ← PC + 1
a rigor, desnecessário
 
Arquitetura/Organização: transferências entre regs.
Instrução JZ (desvio condicional - jump on zero)
Simbólico: JZ end
RT: IF Z = 1 THEN PC ← end
Passos no nível RT:
Se Z=1 (desvio ocorre) 
Busca: RI ← 
MEM(PC)
PC ← PC + 1
Execução: end ← 
MEM(PC)
PC ← end
JZ Don’t care
end
7 4 3 0
Se Z=0 (desvio não ocorre) 
Busca: RI ← 
MEM(PC)
PC ← PC + 1
Execução: end ← 
MEM(PC)
PC ← PC + 1
a rigor, desnecessário
 
Arquitetura/Organização: transferências entre regs.
Instrução HLT (término de execução - halt)
Simbólico: HLT
RT: --
Passos no nível RT:
Busca: RI ← 
MEM(PC)
PC ← PC + 1
Execução: parar o 
processamento
HLT Don’t care
7 4 3 0
 
Organização do Sistema de Memória
RDM
R
E
M
MEM
read
write
 
Arquitetura/Organização
Operações com a memória
x ← MEM(y) descreve uma leitura da memória, que é 
realizada pelos seguintes passos:
1. REM ← y copia y (que é um endereço) para o REM
2. Read ativação de uma operação de leitura da 
memória
3. x ← RDM copia o conteúdo de RDM para x
REM é o registrador de endereços da memória
RDM é o registrador de dados da memória
 
Arquitetura/Organização
Operações com a memória
MEM(y) ← x descreve uma escrita da memória, que é 
realizada pelos seguintes passos:
1. REM ← y copia y (que é um endereço) para o REM
2. RDM ← x copia x (que é um dado) para o RDM
3. write ativação de uma operação de escrita na 
memória
 
Arquitetura/Organização
Operações com a memória
Observações (1)
Após a leitura do PC, seu conteúdo deve ser 
incrementado, para apontar para a próxima posição
O incremento do PC pode ser feito a qualquer instante 
após a transferência do PC para o REM
O incremento do PC pode ser feito em paralelo com 
outras operações
 
Arquitetura/Organização
Operações com a memória
Observações (2)
Um desvio condicional que não se realiza não necessita 
ler o valor do endereço de desvio
Ou seja, basta incrementar o PC
 
Arquitetura/Organização
Então, detalhando mais as 
transferências entre registradores…
 
Arquitetura/Organização: transferências entre regs.
Instrução NOP (nenhuma operação)
Simbólico: NOP
RT: -
Passos no nível RT:
Busca: REM ← PC
Read; PC ← PC 
+ 1
RI ← RDM
Execução: nenhuma 
operação
NOP Don’t care
7 4 3 0
 
Arquitetura/Organização: transferências entre regs.
Instrução STA (armazena acumulador)
Simbólico: STA end
RT: MEM(end) ← AC
Passos no nível RT:
Busca: REM ← 
PC
Read; PC ← 
PC + 1
RI ← RDM
Execução: REM ← PC
Read; PC ← 
PC + 1
REM ← RDM
RDM ← AC
Write
STA Don’t care
end
7 4 3 0
 
Arquitetura/Organização: transferências entre regs.
Instrução LDA (carrega acumulador)
Simbólico: LDA end
RT: AC ← MEM(end)
Passos no nível RT:
Busca: REM ← PC
Read; PC ← PC + 1
RI ← RDM 
Execução: REM ← PC
Read; PC ← PC + 1
REM ← RDM
Read
AC ← RDM; atualiza N 
e Z
LDA Don’t care
end
7 4 3 0
 
Arquitetura/Organização: transferências entre regs.
Instrução ADD (soma)
Simbólico: ADD end
RT: AC ← MEM(end) + AC
Passos no nível RT:
Busca: REM ← PC
Read; PC ← PC + 1
RI ← RDM 
Execução: REM ← PC
Read; PC ← PC + 1
REM ← RDM
Read
AC ← AC + RDM; atualiza 
N e Z
ADD Don’t care
end
7 4 3 0
 
Arquitetura/Organização: transferências entre regs.
Instrução OR (“ou” lógico, bit a bit)
Simbólico: OR end
RT: AC ← MEM(end) OR AC
Passos no nível RT:
OR Don’t care
end
7 4 3 0
Busca: REM ← PC
Read; PC ← PC + 1
RI ← RDM 
Execução: REM ← PC
Read; PC ← PC + 1
REM ← RDM
Read
AC ← AC OR RDM; 
atualiza N e Z
 
Arquitetura/Organização: transferências entre regs.
Instrução AND (“e” lógico, bit a bit)
Simbólico: AND end
RT: AC ← MEM(end) AND AC
Passos no nível RT:
AND Don’t care
end
7 4 3 0
Busca: REM ← PC
Read; PC ← PC + 1
RI ← RDM 
Execução: REM ← PC
Read; PC ← PC + 1
REM ← RDM
Read
AC ← AC AND RDM; 
atualiza N e Z
 
Arquitetura/Organização: transferências entre regs.
Instrução NOT (complementa acumulador)
Simbólico: NOT
RT: AC ← NOT AC
Passos no nível RT:
Busca: REM ← PC
Read; PC ← PC + 1
RI ← RDM 
Execução: AC ← NOT(AC); atualiza N e 
Z
NOT Don’t care
7 4 3 0
 
Arquitetura/Organização: transferências entre regs.
Instrução JMP (desvio incondicional - jump)
Simbólico: JMP end
RT: PC ← end
Passos no nível RT:
Busca: REM ← 
PC
Read; PC ← PC 
+ 1
RI ← RDM 
Execução: REM ← PC
Read
PC ← RDM
JMP Don’t care
end
7 4 3 0
 
Arquitetura/Organização: transferências entre regs.
Instrução JN (desvio condicional - jump on negative)
Simbólico: JN end
RT: IF N = 1 THEN PC ← end
Passos no nível RT:
Se N=1 (desvio ocorre) 
Busca: REM ← PC
Read; PC ← PC + 
1
RI ← RDM 
Execução: REM ← PC
Read
PC ← RDM
JN Don’t care
end
7 4 3 0
Se N=0 (desvio não ocorre) 
Busca: REM ← PC
Read; PC ← PC + 
1
RI ← RDM 
Execução: PC ← PC + 1
 
Arquitetura/Organização: transferências entre regs.
Instrução JZ (desvio condicional - jump on zero)
Simbólico: JZ end
RT: IF Z = 1 THEN PC ← end
Passos no nível RT:
JZ Don’t care
end
7 4 3 0
Se Z=1 (desvio ocorre) 
Busca: REM ← PC
Read; PC ← PC + 
1
RI ← RDM 
Execução: REM ← PC
Read
PC ← RDM
Se Z=0 (desvio não ocorre) 
Busca: REM ← PC
Read; PC ← PC + 
1
RI ← RDM 
Execução: PC ← PC + 1
 
Arquitetura/Organização: transferências entre regs.
Instrução HLT (término de execução - halt)
Simbólico: HLT
RT: --
Passos no nível RT:
Busca: REM ← PC
Read; PC ← PC + 
1
RI ← RDM 
Execução: parar o 
processamento
HLT Don’t care
7 4 3 0
	Slide 1
	Slide 2
	Slide 3
	Slide 4
	Slide 5
	Slide 6
	Slide 7
	Slide 8
	Slide 9
	Slide 10
	Slide 11
	Slide 12
	Slide 13
	Slide 14
	Slide 15
	Slide 16
	Slide 17
	Slide 18
	Slide 19
	Slide 20
	Slide 21
	Slide 22
	Slide 23
	Slide 24
	Slide 25
	Slide 26
	Slide 27
	Slide 28
	Slide 29
	Slide 30
	Slide 31
	Slide 32
	Slide 33
	Slide 34
	Slide 35
	Slide 36
	Slide 37
	Slide 38
	Slide 39
	Slide 40
	Slide 41
	Slide 42
	Slide 43
	Slide 44
	Slide 45
	Slide 46
	Slide 47
	Slide 48
	Slide 49
	Slide 50
	Slide 51
	Slide 52
	Slide 53
	Slide 54
	Slide 55
	Slide 56
	Slide 57
	Slide 58
	Slide 59
	Slide 60
	Slide 61
	Slide 62
	Slide 63
	Slide 64
	Slide 65
	Slide 66
	Slide 67
	Slide 68
	Slide 69
	Slide 70
	Slide 71
	Slide 72
	Slide 73
	Slide 74
	Slide 75
	Slide 76
	Slide 77
	Slide 78
	Slide 79
	Slide 80
	Slide 81
	Slide 82
	Slide 83
	Slide 84
	Slide 85
	Slide 86
	Slide 87
	Slide 88
	Slide 89
	Slide 90
	Slide 91
	Slide 92
	Slide 93
	Slide 94
	Slide 95
	Slide 96
	Slide 97
	Slide 98
	Slide 99
	Slide 100
	Slide 101
	Slide 102
	Slide 103
	Slide 104
	Slide105
	Slide 106
	Slide 107
	Slide 108
	Slide 109
	Slide 110
	Slide 111
	Slide 112
	Slide 113
	Slide 114
	Slide 115
	Slide 116
	Slide 117
	Slide 118
	Slide 119
	Slide 120
	Slide 121
	Slide 122
	Slide 123
	Slide 124
	Slide 125
	Slide 126
	Slide 127
	Slide 128
	Slide 129
	Slide 130
	Slide 131
	Slide 132
	Slide 133
	Slide 134
	Slide 135
	Slide 136
	Slide 137
	Slide 138
	Slide 139
	Slide 140
	Slide 141
	Slide 142
	Slide 143
	Slide 144
	Slide 145
	Slide 146
	Slide 147
	Slide 148
	Slide 149
	Slide 150
	Slide 151
	Slide 152
	Slide 153
	Slide 154
	Slide 155
	Slide 156
	Slide 157
	Slide 158
	Slide 159
	Slide 160
	Slide 161
	Slide 162
	Slide 163
	Slide 164
	Slide 165
	Slide 166
	Slide 167
	Slide 168
	Slide 169
	Slide 170
	Slide 171
	Slide 172
	Slide 173
	Slide 174
	Slide 175
	Slide 176
	Slide 177
	Slide 178
	Slide 179

Mais conteúdos dessa disciplina