29
Organização Básica de computadores e linguagem de montagem 1 o Semestre de 2012 Prof. Edson Borin

Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

  • Upload
    hakien

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Organização Básica de computadores e linguagem de

montagem!

1o Semestre de 2012!

Prof. Edson Borin!

Page 2: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Estrutura de computadores de propósito geral!

Page 3: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Computadores de Propósito Geral!

-  Programar o ENIAC era uma tarefa tediosa e demorada.!

-  Em 1945, projetistas do ENIAC, incluindo John von Neumann, propuseram o “conceito de programa armazenado”. O programa é armazenado na memória, juntamente com os dados.!

-  A idéia também foi concebida por Alan Turing.!

Page 4: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

-  De 1946 a 1952, Neumann e seus colegas no Instituto de Estudos Avançados (IAS) de Princeton desenvolveram o computador “IAS”. !

-  O IAS pode ser visto como o protótipo de todos os computadores de propósito geral subseqüentes.!

Computadores de Propósito Geral!

Page 5: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Estrutura do Computador IAS!

Unidade lógica e

aritmética!

Memória!Principal!

Equipamento!de Entrada e

Saída!

Unidade de Controle!

Page 6: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Estrutura do Computador IAS!

Unidade lógica e

aritmética!

Memória!Principal!

Equipamento!de Entrada e

Saída!

Unidade de Controle!

0111101!0101011!0110010!

0100001!0101111!0000100!

Instruções!

Dados! Operações com dados binários: +, -, x, /!

Controle!

Page 7: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Estrutura do Computador IAS: Memória!

Memória Principal!

0! 01000 ... 00101!1! 11011 ... 00110!2! 01001 ... 00111!...! ...!...! ...!

997! 01000 ... 00101!998! 11011 ... 00110!999! 01001 ... 00111!

-  Memória do IAS!

-  1000 palavras de 40 bits!

-  Números e instruções representados na forma binária!

40 bits!

1000 palavras!

Page 8: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Estrutura do Computador IAS: Memória!

Memória Principal!

0! 01000 ... 00101!1! 11011 ... 00110!2! 01001 ... 00111!...! ...!...! ...!

997! 01000 ... 00101!998! 11011 ... 00110!999! 01001 ... 00111!

-  Memória do IAS!

-  1000 palavras de 40 bits!

-  Números e instruções representados na forma binária!

40 bits!

1000 palavras!

Endereços!

Dados ou Instruções!

Page 9: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Estrutura do Computador IAS: Memória!

0 1! 39!

Bit de sinal!

Armazenamento de um Número!

0 ! 39!

Código de!operação!

Palavra para armazenamento de uma instrução!

7!7! 19!20! 28!

Endereço! Código de!operação!

Endereço!

Page 10: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Uni

dade

de

Con

trol

e!Estrutura do Computador IAS: Controle!

Memória!Principal!

MAR! PC!

IR! IBR!

Cicuitos de controle!

Sinais de controle!

...!

Equipamentos de entrada e saída!

Unidade Lógica!e Aritmética!

MBR!

AC! MQ!

Circuitos lógicos e aritméticos!

Page 11: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Estrutura do Computador IAS: Controle!

-  Operação: execução de instruções, uma a uma.!

-  Processo de execução é dividido em dois ciclos:!

1) ciclo de busca: a instrução é lida da memória!

2) ciclo de execução: uma vez lida da memória, a instrução é executada!

Page 12: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Estrutura do Computador IAS: Controle!

Ciclo de busca!!1) Unidade de controle envia o endereço contido em PC (contador do programa) para a memória!2) A memória lê o conteúdo da memória a partir do endereço fornecido.!3) A Unidade de controle move o dado lido para o registrador IR (registrador de instrução)!4) A Unidade de controle incrementa o PC para apontar para a próxima instrução.!

Page 13: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Estrutura do Computador IAS: Controle!

Ciclo de execução!!1) Unidade de controle decodifica a instrução no registrador IR.!2) Se necessário, a unidade de controle lê operandos da memória.!3) A unidade de controle envia sinais para a unidade lógica e aritmética para realizar a operação!4) Se necessário, a unidade de controle escreve o resultado na memória.!

Page 14: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Estrutura do Computador IAS: Controle!

Exemplo: Execução da instrução LOAD M(X)!-  Transfere M(X) para o acumulador!-  acumulador = registrador AC!-  M(X) = conteúdo da memória no endereço X!-  código de operaçao 00000001!

0 !

Código de!operação!

7! 19!

Endereço!

00000001! 000000001100!8!

LOAD M(12)!Transfere o dado no

endereço 12 da memória para o registrador AC.!

Page 15: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Uni

dade

de

Con

trol

e!Exemplo LOAD M(X): Ciclo de Busca!

0!

Cicuitos de controle!

Sinais de controle!

...!

Equipamentos de entrada e saída!

Unidade Lógica!e Aritmética!

Circuitos lógicos e aritméticos!

00000001! 000000001100!

Memória!Principal!

0!1!...!

999!

PC!MAR!

IBR!IR!

MBR!

MQ!AC!

Page 16: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Uni

dade

de

Con

trol

e!Exemplo LOAD M(X): Ciclo de Busca!

0! 0!

Cicuitos de controle!

Sinais de controle!

...!

Equipamentos de entrada e saída!

Unidade Lógica!e Aritmética!

Circuitos lógicos e aritméticos!

00000001! 000000001100!

Memória!Principal!

0!1!...!

999!

PC!MAR!

IBR!IR!

MBR!

MQ!AC!

UC move o endereço da instrução (em PC) para MAR (Memory

Address Register).!

Page 17: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Uni

dade

de

Con

trol

e!Exemplo LOAD M(X): Ciclo de Busca!

0! 0!

Cicuitos de controle!

Sinais de controle!

...!

Equipamentos de entrada e saída!

Unidade Lógica!e Aritmética!

Circuitos lógicos e aritméticos!

00000001! 000000001100!

Memória!Principal!

0!1!...!

999!

PC!MAR!

IBR!IR!

MBR!

MQ!AC!

A UC envia um sinal de controle para a memória requisitando a leitura do

endereço em MAR!

Page 18: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Uni

dade

de

Con

trol

e!Exemplo LOAD M(X): Ciclo de Busca!

0!

Cicuitos de controle!

Sinais de controle!

...!

Equipamentos de entrada e saída!

Unidade Lógica!e Aritmética!

00...100!

Circuitos lógicos e aritméticos!

00000001! 000000001100!

Memória!Principal!

0!1!...!

999!

PC!MAR!

IBR!IR!

MBR!

MQ!AC!

0!

A Memória lê o dado e o envia para o registrador

MBR (Memory Buffer Register)!

Page 19: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Uni

dade

de

Con

trol

e!Exemplo LOAD M(X): Ciclo de Busca!

0!

00..001!

Cicuitos de controle!

Sinais de controle!

...!

Equipamentos de entrada e saída!

Unidade Lógica!e Aritmética!

00...100!

Circuitos lógicos e aritméticos!

00000001! 000000001100!

Memória!Principal!

0!1!...!

999!

PC!MAR!

IBR!IR!

MBR!

MQ!AC!

0!

A UC transfere o código de operação da instrução lida da memória para o registrador

de instruções (IR)!

Page 20: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Uni

dade

de

Con

trol

e!Exemplo LOAD M(X): Ciclo de Busca!

1!

00..001!

Cicuitos de controle!

Sinais de controle!

...!

Equipamentos de entrada e saída!

Unidade Lógica!e Aritmética!

00...100!

Circuitos lógicos e aritméticos!

00000001! 000000001100!

Memória!Principal!

0!1!...!

999!

PC!MAR!

IBR!IR!

MBR!

MQ!AC!

0!

A UC incrementa o PC para apontar para a próxima

instrução.!

Page 21: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Exemplo LOAD M(X): Ciclo de Busca!

-  Ciclo de busca completo!

-  O código da instrução a ser executada está em IR!

-  PC aponta para a próxima instrução!

-  Vamos ver o ciclo de execução!

Page 22: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Uni

dade

de

Con

trol

e!Exemplo LOAD M(X): Ciclo de Execução!

1!

00..001!

Cicuitos de controle!

Sinais de controle!

...!

Equipamentos de entrada e saída!

Unidade Lógica!e Aritmética!

00...100!

Circuitos lógicos e aritméticos!

00000001! 000000001100!

Memória!Principal!

0!1!...!

999!

PC!MAR!

IBR!IR!

MBR!

MQ!AC!

0!

A UC decodifica a operação em IR e descobre a operação

LOAD M(X)!

Page 23: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Uni

dade

de

Con

trol

e!Exemplo LOAD M(X): Ciclo de Execução!

1!

00..001!

Sinais de controle!

...!

Equipamentos de entrada e saída!

Unidade Lógica!e Aritmética!

00...100!

Circuitos lógicos e aritméticos!

00000001! 000000001100!

Memória!Principal!

0!1!...!

999!

PC!MAR!

IBR!IR!

MBR!

MQ!AC!

0.1100!

A UC copia os 12 bits de endereço da instrução (bits11 a 19) para o registrador MAR!

Cicuitos de controle!

Page 24: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Uni

dade

de

Con

trol

e!Exemplo LOAD M(X): Ciclo de Execução!

1!

00..001!

Sinais de controle!

...!

Equipamentos de entrada e saída!

Unidade Lógica!e Aritmética!

00...100!

Circuitos lógicos e aritméticos!

00000001! 000000001100!

Memória!Principal!

0!1!...!

999!

PC!MAR!

IBR!IR!

MBR!

MQ!AC!

0.1100!

Cicuitos de controle!

A UC envia um sinal de controle para a memória requisitando a leitura do

endereço em MAR!

Page 25: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Uni

dade

de

Con

trol

e!Exemplo LOAD M(X): Ciclo de Execução!

1!

00..001!

Sinais de controle!

...!

Equipamentos de entrada e saída!

Unidade Lógica!e Aritmética!

Circuitos lógicos e aritméticos!

00000001! 000000001100!

Memória!Principal!

0!1!...!

999!

PC!MAR!

IBR!IR!

MBR!

MQ!AC!

0.1100!

Cicuitos de controle!

11...111!A Memória lê o dado e o envia para o registrador

MBR (Memory Buffer Register)!

Page 26: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Uni

dade

de

Con

trol

e!Exemplo LOAD M(X): Ciclo de Execução!

1!

00..001!

Sinais de controle!

...!

Equipamentos de entrada e saída!

Unidade Lógica!e Aritmética!

11...111!

Circuitos lógicos e aritméticos!

00000001! 000000001100!

Memória!Principal!

0!1!...!

999!

PC!MAR!

IBR!IR!

MBR!

MQ!AC!

0.1100!

Cicuitos de controle!

11...111!

A UC envia sinais para a unidade lógica e

aritmética (ULA) copiar o valor de MBR para o

registrador AC.!

Page 27: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Exemplo LOAD M(X): Ciclo de Execução!

-  Ciclo de execução completo!

-  O conteúdo da memória no endereço 12 foi copiado para o registrador AC.!

-  A próxima instrução pode ser executada a partir do ciclo de busca.!

Page 28: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Estrutura do Computador IAS: Exercício!

-  A instrução ADD M(X) soma o valor na posição X da memória com o valor do registrador AC e grava o resultado no registrador AC.!

1)  Qual a diferença entre o ciclo de busca desta instrução e o ciclo de busca da instrução LOAD M(X)?!

2)  Descreva o ciclo de execução da instrução ADD M(X).!

Page 29: Organização Básica de computadores e linguagem de montagemedson/disciplinas/mc404/2012-1s/slides/mc404_3... · Estrutura do Computador IAS: Controle! Ciclo de busca!! 1) Unidade

Conceitos Básicos: Linguagens de Programação!

Leitura!!-  Capítulo 2.1 do livro do Stallings

(Arquitetura e Organização de Computadores)!