Baixe o app para aproveitar ainda mais
Prévia do material em texto
Contextualização Máquina de von Neumann Arquitetura de computadores Aula 02 Máquina de von Neumann — Computador IAS Prof. Marcos E. Barreto Departamento de Ciência da Computação Instituto de Matemática Universidade Federal da Bahia 2012/2 Prof. Marcos E. Barreto DCC – IM – UFBA (1/15) Contextualização Máquina de von Neumann Roteiro 1 Contextualização 2 Máquina de von Neumann Prof. Marcos E. Barreto DCC – IM – UFBA (2/15) Contextualização Entrada e alteração de programas no ENIAC eram tarefas complexas. Figura: ENIAC (1946) Contextualização (2) Programa armazenado: dados e instruções na memória (John von Neumann e Alan Turing). Figura: Componentes usados na construção do ENIAC Contextualização (3) EDVAC (1945): primeira proposta de programa armazenado. Figura: Arquitetura do EDVAC Contextualização Máquina de von Neumann Arquitetura do computador IAS (1) IAS (1946 — 1952): protótipo de todos os computadores de uso geral. Unidades especializadas para as operações aritméticas básicas. Unidade de controle central => para prover suporte ao “propósito geral”. Memória => para prover suporte ao conceito de programa armazenado. Unidades de entrada e saída => para prover comunicação com o mundo externo. Prof. Marcos E. Barreto DCC – IM – UFBA (6/15) Contextualização Máquina de von Neumann Arquitetura do computador IAS (2) Prof. Marcos E. Barreto DCC – IM – UFBA (7/15) Contextualização Máquina de von Neumann Arquitetura do computador IAS (3) Alterações na terminologia e notações a partir de 1998. Memória: 1000 locais (palavras) de 40 bits cada. Dados e instruções são representados em formato binário, com 40 bits. Prof. Marcos E. Barreto DCC – IM – UFBA (8/15) Contextualização Máquina de von Neumann Arquitetura do computador IAS (4) Unidade de controle: busca instruções na memória e as executa uma de cada vez. => ciclo de instrução UC e ULA usam registradores específicos para armazenamento de dados: Registrador de buffer de memória (MBR) Registrador de endereço de memória (MAR) Registrador de instrução (IR) Registrador de buffer de instrução (IBR) Contador de programa (PC) Acumulador (ACC) e Quociente multiplicador (MQ) Prof. Marcos E. Barreto DCC – IM – UFBA (9/15) Contextualização Máquina de von Neumann Arquitetura do computador IAS (5) Prof. Marcos E. Barreto DCC – IM – UFBA (10/15) Contextualização Máquina de von Neumann Arquitetura do computador IAS (6) Conjunto de instruções: 21 instruções Transferência de dados: entre memória e registradores da ULA ou entre registradores da ULA. Desvio incondicional: instrução de desvio, para suporte à repetição. Desvio condicional: desvio dependente de condição (ponto de decisão). Aritméticas: operações da ULA. Modificação de endereços: cálculo e manipulação de endereços. Prof. Marcos E. Barreto DCC – IM – UFBA (11/15) Contextualização Máquina de von Neumann Arquitetura do computador IAS (7) Transferência de dados Opcode Rep. simbólica Descrição 00001010 LOAD MQ Transfere o conteúdo de MQ para AC 00001001 LOAD MQ,M(X) Transfere o conteúdo do local de memória X para MQ 00100001 STOR M(X) Transfere o conteúdo de AC para o local de memória X 00000001 LOAD M(X) Transfere M(X) para o AC 00000010 LOAD –M(X) Transfere -M(X) para o AC 00000011 LOAD |M(X)| Transfere o valor absoluto de M(X) para o AC 00000100 LOAD -|M(X)| Transfere -|M(X)| para o AC Prof. Marcos E. Barreto DCC – IM – UFBA (12/15) Contextualização Máquina de von Neumann Arquitetura do computador IAS (8) Desvio incondicional Opcode Rep. simbólica Descrição 00001101 JUMP M(X,0:19) Apanha a próxima instrução da metade esquerda de M(X) 00001110 JUMP M(X,20:39) Apanha a próxima instrução da metade direita de M(X) Desvio condicional Opcode Rep. simbólica Descrição 00001111 JUMP+ M(X,0:19) Se o número no AC for não negativo, apanha a próxima instrução da metade esquerda de M(X) 00010000 JUMP+ M(X,20:39) Se o número no AC for não negativo, apanha a próxima instrução da metade direita de M(X) Prof. Marcos E. Barreto DCC – IM – UFBA (13/15) Contextualização Máquina de von Neumann Arquitetura do computador IAS (9) Aritmética Opcode Rep. simbólica Descrição 00000101 ADD M(X) Soma M(X) ao AC; coloca resultado em AC 00000111 ADD |M(X)| Soma |M(X)| ao AC; coloca resultado em AC 00000110 SUB M(X) Subtrai M(X) de AC; coloca resultado em AC 00001000 SUB |M(X)| Subtrai |M(X)| de AC; coloca resultado em AC 00001011 MUL M(X) Multiplica M(X) por MQ; coloca bits mais significativos do resultado em AC e bits menos significativos em MQ 00001100 DIV M(X) Divide AC por M(X); coloca o quociente em MQ e o resto em AC 00010100 LSH Multiplica AC por 2; ou seja, desloca à esquerda uma posição de bit 00010101 RSH Divide AC por 2; ou seja, desloca uma posição à direita Prof. Marcos E. Barreto DCC – IM – UFBA (14/15) Contextualização Máquina de von Neumann Arquitetura do computador IAS (10) Movimentação de dados Opcode Rep. simbólica Descrição 00010010 STOR M(X,8:19) Substitui campo de endereço da esquerda em M(X) pelos 12 bits mais à direita em AC 00010011 STOR M(X,28:39) Substitui campo de endereço da direita em M(X) pelos 12 bits mais à direita em AC Prof. Marcos E. Barreto DCC – IM – UFBA (15/15) Contextualização Máquina de von Neumann
Compartilhar