Sei sulla pagina 1di 31

Organização de

Computadores
Aula 4:Máquina de John von Neumann
Professora: Emanoela Lopes
Agenda
 Modelo de Von Neumann;
 Conjunto de instruções;

 Processador e seus componentes.

 Memória;

- Características;
- Operações;

        
Modelo de Von Neumann

MEMÓRIA

PROCESSADOR
John Von Neumann,
matemático húngaro (1903-
1957), contribuiu para a
matemática e a física. Foi
professor da Universidade de
ENTRADA e SAÍDA Princeton e um dos
construtores do ENIAC.
Modelo de Von Neumann
 Dados e instruções armazenados em uma única memória utilizada
tanto para leitura quanto para escrita.

 Os dados armazenados na memória podem ser acessados através


de endereços.

 A execução de um programa ocorre sequencialmente, por ordem


de endereços, exceto se for feito algum desvio explicito no
programa.

 Os dados são produzidos através de instruções durante a etapa de


processamento.
Modelo de Von Neumann

MEMÓRIA

RDM REM CONTROLE

PROCESSADOR

ENTRADA e SAÍDA
Funcionamento dos barramentos
Memória

READ
REM Memória
WRITE

RDM

 READ: O conteúdo da posição de memória endereçada por REM é


copiada em RDM.
 Write: A posição de memória endereçada por REM recebe o conteúdo
de RDM.
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.
Acesso a 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.
Acesso a Memória
 Tamanho da palavra  Determina RDM

Palavra de 32 bits  RDM com 32 bits

 Tamanho da memória em palavras  Determina REM

Memória com 256 palavras  REM com 8 bits


Exercícios
 Considere um computador baseado no modelo de Von
Neumann com REM de 32 bits. Podemos afirmar que:
1) Este computador utiliza uma célula de 32 bits
2) Este computador possui 32 instruções
3) Este computador utiliza uma célula de 4GB
4) Este computador pode endereçar 4G células
 
 Considere um computador baseado no modelo de Von

Neumann com RDM de 64 bits. Podemos afirmar que:


1) Este computador pode endereçar 64M células
2) Este computador possui 64 instruções
3) Este computador pode ter no máximo 8GB de memória
4) Este computador utiliza uma célula de 64 bits
Exercícios

 Um sistema possui memória com 8G endereços e


cada célula é composta por 4 bytes.
a)Qual o tamanho em bits do REM?
8 G = 233 endereços  REM com 33 bits

b) Qual o tamanho em bits do RDM?


4 bytes = 32 bits  RDM com 32 bits

c) Qual o tamanho da memória?


8G endereços x 4 bytes = 233 x 22 = 235 bytes =
32 GB
Processador
 Procedimento de Inicialização;
 Ciclos de Instruções;
 Interrupções;
 Pipeline
Procedimento de Inialização do PC
Bootstrap: Processo de inicialização do PC
1.Energia
2.Registradores inicializados
3. Executa instrução em:IP  BIOS
POST
SETUP
Carga do S.O
Post: Verifica os componentes essenciais do PC;
Setup: Configurações;
Carga do S.O: Carga do sistema operacional;
Ciclo de instruções
1)Buscar uma instrução na memória;
2)Decodificar operação;
3)Buscar os operandos;
4)Executar a operação;
5)Guardar o resultado (se for o caso);
6)Reiniciar o ciclo;
Pipeline
 Imagine uma linha de montagem de veículos:
1. Montar chassis CARRO1 1h
2. Colocar motor e pneus CARRO1 1h
3. Prender carroceria CARRO1 1h
4. Realizar acabamento CARRO1 1h

A cada 4h sai um carro pronto

 Mas...
1. Montar chassis CARRO 41h
2. Colocar motor e pneus CARRO3 1h
3. Prender carroceria CARRO2 1h
4. Realizar acabamento CARRO1 1h

A cada 1h sai um carro pronto (depois do primeiro)


Unidade lógico e Aritmética (ULA)

Sinais de controle: Seleciona a operação desejada;


Operando: Fornece a maneira de calcular a posição atual dos
dados;
Códigos de Condição: Indicações sobre a operação realizada.
Unidade lógico e Aritmética (ULA)
 Código de Condição
- Zero (indica se o resultado da operação realizada é
zero).
- Overflow (Estouro de campo) Indica que o resultado
de uma operação aritmética não pode ser
representado no espaço disponível.
- Sinal (indica se o resultado da operação realizado é
positivo ou negativo).
- Carry (indica na operação de soma o bit de vai-um e
na operação de subtração o bit de vem-um.
Unidade de Controle
 Gerenciamento do fluxo interno dos dados:
Busca, decodifica e executa instruções.
 Gerencia o instante preciso em que ocorrem as

transferências de dados.
 Cada sinal de controle comanda uma
microooperação.
 Exemplo de microoperação: Seleção de um

dado de entrada, seleção de uma operação da


ULA etc.
Modelo Estrutural da Unidade de Controle

 RI:Registrador de Instruções: Armazena a instrução que está


sendo executada.
 RST: Registrador de estado:Armazena códigos de condição
gerados pela ULA e outros elementos como sinais de interrupção
por dispositivos de E/S.
 PC: Contador de Programa: Atualiza o endereço de memória da
próxima instrução.
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 ?
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 RST ?
Quais as funções dos registradores RDM e REM ?
Programação de um Processador
 A linguagem que o processador entende é a linguagem
de máquina definida por:

1) Conjunto de código binários que a unidade de controle é


capaz de decodificar e executar;

2)É formada pela conjunto de instruções da máquina;

3) É específica de cada máquina.


Linguagem de Montagem (Assembly)
 Associa símbolos aos códigos binários onde cada
símbolo representa uma instrução (ou pseudo-
instrução);

 Símbolo representa a operação associada:


ADD - adição; SUB - subtração ...

 Esses símbolos são chamados mnemônicos;

 Foram dados nomes aos operandos e rótulos as


posições ocupadas pelo programa.
Tipos de Instrução
 Instruções são as ordens dadas ao computador.
Formato de Instrução
Formato das Instruções
Máquinas de um endereço: a instrução especifica
apenas de um operando de entrada;
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
Programas para executar a expressão:
Y = (A – B) ÷ (C + D × E)

Três Operandos
Programas para executar a expressão:
Y = (A – B) ÷ (C + D × E)

Dois Operandos
Programas para executar a expressão:
Y = (A – B) ÷ (C + D × E)

Um Operando
Link de Apoio
 https://www.youtube.com/watch?v=F3qWg1JBPZg
https://www.youtube.com/watch?v=Vk7iJ2D4aks
https://www.youtube.com/watch?v=slHVnhh9IW0
https://www.youtube.com/watch?v=jH5gOJvvCSQ
https://www.youtube.com/watch?v=0A4CxxJ9h24
https://www.youtube.com/watch?v=_-4VbcmllJ8
http://algol.dcc.ufla.br/~monserrat/icc/Computador_simplifi
cado.html
http://www.inf.ufrgs.br/~weber/aulas/inf107/

Potrebbero piacerti anche