John von Neumann (1903-1957

)

1

Linguagem de Máquina – Computador IAS

Palavra de 40 bits, 2 instruções de máquina por palavra
Instrução esquerda Instrução direita

bit 0

7 8

19 20

27 28

39

8 bits opcode

12 bits endereço de memória (operando)

Ref.

W. Stallings, Computer Organization & Architecture, Sixth Edition, Prentice-Hall, 2003, page 23.
2

2003. Prentice-Hall. M(X) M(X) M(X) – M(X) |M(X)| – |M(X)| W. Opcode 00001010 00001001 00100001 00000001 00000010 00000011 00000100 Descrição AC ← MQ MQ ← M(X) M(X) ← AC AC ← M(X) AC ← – M(X) AC ← |M(X)| AC ← – |M(X)| MQ MQ.0:19) JUMP M(X.20:39) Opcode Descrição 00001101 próxima instrução M(X. 3 Instruções de Desvio Incondicional Computador IAS Instrução JUMP M(X. Sixth Edition.Instruções de Transferência de Dados Computador IAS Instrução LOAD LOAD STOR LOAD LOAD LOAD LOAD Ref. Stallings. page 23.20:39) 4 .0:19) 00001110 próxima instrução M(X. Computer Organization & Architecture.

então próxima instrução M(X.20:39) 00010000 5 Instruções Aritméticas Computador IAS Instrução ADD M(X) ADD |M(X)| SUB M(X) SUB |M(X)| MUL M(X) DIV M(X) LSH RSH Opcode 00000101 00000111 00000110 00001000 00001011 00001100 00010100 00010101 Descrição AC ← AC+M(X) AC ← AC+|M(X)| AC ← AC─M(X) AC ← AC ─ |M(X)| AC.0:19) 00001111 Se AC ≥ 0.Instruções de Desvio Condicional Computador IAS Instrução Opcode Descrição JUMP +M(X. AC ← MQ/M(X) AC ← AC x 2 AC ← AC / 2 6 .0:19) Se AC ≥ 0.20:39) JUMP +M(X. MQ ← MQ×M(X) MQ. então próxima instrução M(X.

28:39) 7 Como o Computador IAS soma 2 números Supondo os números armazenados em memória nas posições (endereços) 100 e 101 O resultado da soma deve ser armazenado em memória na posição 102 Instrução LOAD M(100) ADD M(101) STOR M(102) Opcode Descrição 00000001 AC ← M(100) 00000101 AC ← AC+M(101) 00100001 M(102) ← AC 8 .8:19) ← AC(28:39) 00010011 M(X.Instruções de Alteração de Endereço Computador IAS Instrução STOR M(X.8:19) Opcode Descrição 00010010 M(X.28:39) ← AC(28:39) STOR M(X.

PC Palavra Endereço 100 Palavra Endereço 101 Palavra Endereço 102 Endereço max 10 Memória 2a Instrução programa .Código de Máquina do Computador IAS 00000001 000001100100 00000101 000001100101 Load 100 Add 101 00100001 000001100110 00000000 000000000000 Stor 102 Stop 9 Programa Armzenado em Memória Endereço 0 1a Instrução programa Endereço Carrega Contador de Programa.

Direita 05065 00000 00000 000000001F 0000000011 0000000030 11 Executando um Programa Via de Dados Registrador AC Registrador MQ Dispositivos E/S Circuitos Lógicos e Aritméticos Registrador de Buffer de Memória (MBR) Registrador IBR Registrador PC Memória Principal (MP) 212 x 40 bits Reg. Instrução (IR) Circuito de Controle Reg. 100 101 102 FFF Inst. Esquerda 01064 21066 00000 Inst.Programa Armzenado em Memória Instrução (em Hexadecimal) Endereço 000 001 002 .. Endereço Memória (MAR) Sinais de Controle Unidade de Controle 12 ..

Coloca o endereço da primeira instrução do programa no contador de programa (PC). Inicia a execução do programa: MAR ← PC Leitura da memória: IBR ← MBR ← M(MAR). Executa Escrita na memória Coloca instrução direita (Stop) em IR e operando 000 em MAR. Executa Coloca a instrução direita (Add) em IR e operando (endereço) 101 em MAR.Ciclo de Instrução do IAS Armazena as instruções em liguagem de máquina em posições contíguas da memória. Decodifica MBR ← AC. Executa 14 .) MAR ← PC Leitura da memória: IBR ← MBR ← M(MAR). Decodifica Stop. Decodifica Lê a memória e soma: AC ← AC + M(101). Executa Aponta próxima instrução: PC ← PC + 1 13 Ciclo de Instrução do IAS (cont. Busca Coloca a instrução esquerda (Load) em IR e operando (endereço) 100 em MAR. Busca Coloca instrução esquerda (Stor) em IR e operando (endereço) 102 em MAR. Decodifica Leitura da memória: AC ← M(100).

ALU) Barramentos de Transferência de Dados Unidade de Controle 15 Registradores do Computador IAS Registrador Contador de Programa (PC) Acumulador (AC) Multiplier quotient (MQ) Buffer de dados/instrução (MBR) Buffer de instrução (IBR) Register de instrução (IR) Endereço de memória (MAR) Size (bits) 12 40 40 40 20 8 12 Função Armazena endereço da próxima instrução Armazenamento temporário de dados Armazenamento temporário de dados Dados de leitura/escrita de memória Armazena instrução direita (bits 20-39) Armazena opcode de uma instrução Armazena endereço de memória de uma instrução 16 .Hardware Contém Dispositivos de Armazenamento de Dados Memória Registradores Dispositivos de Decodificação e Execução Unidade de Execução (arithmetic logic unit.

Sign up to vote on this title
UsefulNot useful