Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 -...

26
III.2 - Princípios de Arquitetura III.2 - Princípios de Arquitetura Conjunto de Instruções e Modo de Endereçamento Ciclo de busca decodificação execução de instruções Programação de um processador Arquitetura de Von Neumann e Componentes Arquiteturas 4 , 3 , 2 , 1 e 0 Tabela ASCII

Transcript of Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 -...

Page 1: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

• Conjunto de Instruções e Modo deEndereçamento

• Ciclo de busca – decodificação – execuçãode instruções

• Programação de um processador• Arquitetura de Von Neumann e

Componentes• Arquiteturas 4, 3, 2, 1 e 0• Tabela ASCII

Page 2: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

• Conjunto de Instruções e Modode Endereçamento

instrução: Conjunto de bits devidamentecodificados que indica ao computador quesequência de microoperações ele deverealizar.

Classificação: Semelhança de propósito eformato. As mais comuns são:

• Transferência de dados• Aritméticas e lógicas• Teste de desvio

Page 3: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

Conjunto de instruções: é o conjunto detodas as instruções que um computadorreconhece e pode realizar (equivalente ao

conjunto de palavras reservadas e uma linguagem de

alto nível).

Programa: qualquer sequência finita deinstruções de um determinado conjuntode instruções.

Modos de endereçamento: são as diversasforma de endereço de um operandosomadas as diversas formas de desvio.

• Conjunto de Instruções e Modo de Endereçamento

Page 4: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

• Ciclo de busca – decodificação –execução de instruções

Busca: Leitura de uma instrução da memória.Envolve:

• Copiar o apontador de programa (PC) para oregistrador de endereço de memória (REM);

• Leitura de uma instrução da memória (RDM);

• Copiar o registrador de dados da memória(RDM) para o registrador de instruções (RI);

• Atualizar o apontador (PC).

Page 5: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

Decodificação: Determinar qual a instrução aser executada. A decodificação é feitageralmente por lógica combinacional.

Execução: Depende de qual instrução a serexecutada.• Cálculo do endereço de operandos

• Busca de operandos na memória

• Seleção de operação da ULA

• Carga de registradores

• Escrita de operandos na memória

• Atualização do PC para desvios

• Ciclo de busca – decodificação – execução de instruções

Page 6: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

R E

M

R

D M

P C

Unidade de Controle

R I

N|Z

A C

0000 0001 0001 0000

0000 0010 0000 1101

0000 0011 0010 0000

0000 0100 0000 1110

0000 0101 0011 0000

0000 0110 0000 1111

0000 0111 1111 0000

0000 1000 0000 0000

0000 1001 0000 0000

0000 1010 0000 0000

0000 1011 0000 0000

0000 1100 0000 0000

0000 1101 0000 0101

0000 1110 0000 0011

0000 1111 0000 0000

U L A

A

B

C

5

3

0

Posição Conteúdo

00

00

00

01

00

00

00

01

00

01

00

00

0001 0000

001110001100101010001

Page 7: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

• Programação de um processador

Linguagem de máquina: É uma imagemnumérica (binária) que representa acodificação do conjunto de instruçõesde um computador.

Programa objeto: São representadose armazenados em linguagem demáquina.

Page 8: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

Devido à dificuldade do trabalho com estalinguagem foram criados:

Mneumônicos associados às instruções:

Nomes dos operandosRótulos às posições ocupadas pelo

programa

Necessita de Tradução Montagem

Montador: programa que realiza a montagem (Tradutor);

Compilador: gera rotinas em linguagem de máquina paracada instrução.

• Programação de um processador

Page 9: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

• Arquitetura de Von Neumann e Componentes

Um Computado de Primeira Geração: O EDVAC(Eletronic Discrete Variable Computer)

No ENIAC os programas e dados eramarmazenados separadamente.

O conceito de programa armazenado é atribuídoao matemático húngaro John von Neumann(1903-1957). Isto caracteriza a possibilidade demudança das próprias instruções.

Page 10: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

Arquitetura do EDVAC.• Programa armazenado

• Memória: 1024 palavras de 44 bits cada,implementada através de linha de atrasode mercúrio.

• 20 K palavras de memória secundariamagnética.

• Representação interna em binário.

• Circuitos aritméticos binários seriais,devido a entrada de dados serial.

• Arquitetura de Von Neumann e Componentes

Page 11: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura• Arquitetura de Von Neumann e Componentes

...Arquitetura do EDVAC.

Memória Principal

Unidade Central de

Processamento

Unidade Lógica e

Aritmética

Unidade de Controle de Programa

Unidades de Memória

Secundárias

Impressora e Perfuradora de Cartões

Teletipo

Leitora de cartões

Page 12: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

Antes da execução do programa

Colocação de todas as instruções edados na memória principal.

Palavras de 44 bits permitem 4 camposde 10 bits, um campo de 4 bits decódigo de instrução.

Capacidade de 16 instruções

• Arquitetura de Von Neumann e Componentes...Arquitetura do EDVAC.

Page 13: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

Exemplo de Instrução Aritmética.

A1 A2 A3 A4 OP

• Executa OP conteúdos em posições cujosendereços são A1, A2 e coloca o resultadoem A3.

• A4 especifica o endereço da próximainstrução a ser executada.

• Arquitetura de Von Neumann e Componentes...Arquitetura do EDVAC.

Page 14: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

Exemplo de Instrução Condicional

A1 A2 A3 A4 C

Se o conteúdo de A1 for maior que oconteúdo de A2 então execute a instrução daposição A3 se não, da posição A4.

• Arquitetura de Von Neumann e Componentes...Arquitetura do EDVAC.

Page 15: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

Instrução de transferência de memória principalpara secundária.

A1 m,n A3 A4 OP

Significado:

1. Se m=1 Transfira para o condutor n a sequência de palavras namemória principal nas posições A1, A1+1, A1+2 .......,A3.

2. Se m=2 Transfira do condutor n a sequência de palavras para asposições A1, A1+1, A1+2 .......,A3. na memória principal.

A4 endereço da próxima instrução.

Este computador ficou operacional em 1951.

• Arquitetura de Von Neumann e Componentes...Arquitetura do EDVAC.

m – modificador de operaçãon – endereço do condutor

Page 16: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

Principais InconvenientesTempo de acesso muito longo comparado aotempo de processamento da UCP. O que levou ao chamado “gargalo de von Neumann”.

•Possíveis soluções Armazenar resultados na posição inicial de

um dos operandos. Destinar um endereço de memória para

armazenar o resultado de determinadaoperação.

Convencionar previamente o endereço dapróxima instrução.

• Arquitetura de Von Neumann e Componentes...Arquitetura do EDVAC.

Page 17: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

Modelo de von Neumann: O computador IAS.1946 (Princeton Institute for Advanced Studies)

Memória principal: Tubo de raios catódicos deacesso randômico.

Instrução: OP A

Blocos básicos• UCP• Unidade de controle de programa• Memória principal de 4096 palavras de 40

bits: grava duas instruções de 20 bits oudados de 40 bits

• Unidade de E/S

• Arquitetura de Von Neumann e Componentes

Arquitetura de um endereço

Page 18: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

AC–Acumulador na UCP –atua como memóriarápida guardando osresultados da ULA

MQ–Registrador Multiplica-dor quociente

DR-Registrador de dados de40 bits

AR–Registrador de endereçode 12 bits

IBR–Registra a instrução nãoexecutadaimediatamente

PC – Registrador de endereçoIR–registra a instrução exe-

cutada imediatamente.

Estrutura do IAS

• Arquitetura de Von Neumann e Componentes ....O computador IAS

Page 19: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

há alterações em relação ao EDVAC•Registradores pré-definidos na UCP•Armazenamento sequencial do programa.

• Arquitetura de Von Neumann e Componentes ....O computador IAS

Formato dos Dados

Binário, ponto fixo e complemento 2

primeiro bit é o de sinalo ponto está implícito entre 0 e 1

0 1 39

Formato das instruções

operação operaçãoendereço endereço

0 7 8 19 20 27 28 39

Page 20: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

•Arquiteturas 4, 3, 2, 1 e 0

4 endereços

OP E1 E2 E3 E4E1 – fonteE2 – fonteE3 – destinoE4 – próxima inst.

A=((B+C)*D+E-F)/(G*H)

e1 ADD B C A e2e2 MUL A D A e3e3 ADD A E A e4e4 SUB A F A e5e5 DIV A G A e6e6 DIV A H A e7e7 HALT

O quarto endereço é desnecessário pois osprogramas eram escritos sequencialmente

Page 21: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura•Arquiteturas 4, 3, 2, 1 e 0A=((B+C)*D+E-F)/(G*H)

OP E1 E2 E3E1 – fonteE2 – fonteE3 – destino

PC – criado para localizar apróxima instruçãoÉ necessário Jump–indica salto

e1 ADD B C Ae1+1 MUL A D Ae1+2 ADD A E Ae1+3 SUB A F Ae1+4 DIV A G Ae1+5 DIV A H Ae1+6 HALT

Reduz o tamanhoda instrução masperde-se um graude liberdade

3 endereços

Page 22: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura•Arquiteturas 4, 3, 2, 1 e 0

A=((B+C)*D+E-F)/(G*H)

OP E1 E2

E1 – fonte/destinoE2 – fonte

MOV – movimento dememória

e1 MOV A Be1+1 ADD A Ce1+2 MUL A De1+3 ADD A Ee1+4 SUB A Fe1+5 DIV A Ge1+6 DIV A He1+7 HALT

Evita-se a repetição dodestino.

2 endereços

Page 23: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura•Arquiteturas 4, 3, 2, 1 e 0

A=((B+C)*D+E-F)/(G*H)

OP E1E1 – memória

AC – Acumulador substituio fonte e o destino

LDA–move da memóriapara o acumulador -LoaD

STA–move do acumuladorpara a memória-STore

e1 LDA Be1+1 ADD Ce1+2 MUL De1+3 ADD Ee1+4 SUB Fe1+5 DIV Ge1+6 DIV He1+7 STA Ae1+8 HALT

Economia de acesso à memória

1 endereços

Page 24: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura•Arquiteturas 4, 3, 2, 1 e 0 A=((B+C)*D+E-F)/(G*H)0 endereços

OPE1 – memória

PilhaEquação escrita emnotação polonesareversa.Equação fica:HGFEDCB+*+-//

PUSH – colocar no topo da pilhaPOP – enviar do topo da pilha para a memória

e1 PUSH He1+1 PUSH Ge1+2 PUSH Fe1+3 PUSH Ee1+4 PUSH De1+5 PUSH Ce1+6 PUSH B

e1+7 ADDe1+8 MULe1+9 ADDe1+10 SUBe1+11 DIVe1+12 DIVe1+13 POP Ae1+14 HALT

Não há grande vantagem em relação a anterior

Page 25: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

•Tabela Ascii

Page 26: Conjunto de Instruções e Modo de decodificação execução ... · •Tabela ASCII. III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura

III.2 - Princípios de Arquitetura