A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

ARQUITETURA DE COMPUTADORES Nível do Conjunto de Instruções

Apresentações semelhantes


Apresentação em tema: "ARQUITETURA DE COMPUTADORES Nível do Conjunto de Instruções"— Transcrição da apresentação:

1 ARQUITETURA DE COMPUTADORES Nível do Conjunto de Instruções
Prof.: Agostinho S. Riofrio

2 Nível do Conjunto de Instruções
Agenda Introdução Registradores Tipos de Dados Formato de Instruções Modos de Endereçamento Instruções Entrada/Saída Interrupções

3 Nível do Conjunto de Instruções
Introdução Posicionado entre o nível de Microarquitetura e o nível do Sistema Operacional. Foi o primeiro nível a ser desenvolvido. Permite que a maioria dos computadores seja capaz de executar programas escritos em várias linguagens de alto nível. É a interface entre o software e o hardware.

4 Nível do Conjunto de Instruções
Introdução

5 Nível do Conjunto de Instruções
Registradores De uso Geral: Registradores disponíveis para os programadores para usos gerais. De uso Especial: PC (Contador de Programa), ST (Apontador da Pilha) PSW (Registrador de stados da ULA) N – Marcado quando o resultado foi Negativo Z – Marcado quando o resultado foi Zero V – Marcado quando o resultado excedeu a capacidade da ULA (overflow) C – Marcado quando o resultado causou um “vai-um” do bit da extrema direita A – Marcado quando houve um vai-um do bit 3 (“vai-um” auxiliar) P – Marcado quando o resultado teve paridade par.

6 Nível do Conjunto de Instruções
Registradores – Pentium 4

7 Nível do Conjunto de Instruções
Tipos de dados Numéricos Inteiros Complemento de dois Com sinal ou sem sinal Dupla precisão Ponto flutuante (32, 64 ou 128 bits) Não Numéricos ASCII Unicode Valores Booleanos Verdadeiro Falso

8 Nível do Conjunto de Instruções
Numéricos – Pentium 4

9 Nível do Conjunto de Instruções
Formatos de Instrução Quatro formatos comuns de instrução: (a) Instrução sem endereço (c) Instrução com dois endereços. (b) Instrução com um endereço. (d) Instrução com três endereços.

10 Nível do Conjunto de Instruções
Modos de Endereçamento Endereçamento Imediato Operando vem junto com a instrução. Usado para especificar constantes inteiras pequenas. Instrução imediata para carregar a constante 4 no registrador 1.

11 Nível do Conjunto de Instruções
Modos de Endereçamento Endereçamento Direto Acessa sempre a mesma posição de memória. O endereço é dado na instrução. Só pode ser usado para variáveis globais cujos endereços são conhecidos no momento da compilação.

12 Nível do Conjunto de Instruções
Modos de Endereçamento Endereçamento de Registrador Especifica um registrador em vez de memória.

13 Nível do Conjunto de Instruções
Modos de Endereçamento Endereçamento Indireto de Registrador Endereço de memória está contido em um registrador. Endereçamento indireto de registrador: um programa genérico em linguagem de montagem para calcular a soma dos elementos de um vetor.

14 Nível do Conjunto de Instruções
Endereçamento Indexado É quando o endereço de memória dado por um registrador adicionado a um deslocamento constante. O deslocamento vem da instrução. Possível representação de MOV R4, A (R2).

15 Nível do Conjunto de Instruções
Endereçamento Indexado Programa genérico em linguagem de montagem para calcular a operação OR de Ai AND Bi para dois vetores de 1024 Elementos.

16 Nível do Conjunto de Instruções
Modos de Endereçamento De base indexado Endereço de memória é resultado da soma de dois registradores adicionados a um deslocamento. Um registrador é a base e o outro é o índice. LOOP: MOV R4,(R2+R5) AND R4,(R2+R6)

17 Nível do Conjunto de Instruções
Endereçamento Pilha Não opera com endereços

18 Nível do Conjunto de Instruções
Endereçamento

19 Nível do Conjunto de Instruções
De Desvio Altera fluxo do programa para o endereço alvo determinado pelo modo de endereçamento. Movimento de Dados Gera cópia de um dado em registrador ou memória Operações Diádicas: Combinam dois operandos para obter um resultado Monádicas: Só um operando e só um resultando

20 Nível do Conjunto de Instruções
Comparações e Desvios Condicionais Testar dados e alterar a sequência de instruções a ser executada. Chamada de Procedimento Grupo de instruções que realiza alguma tarefa e pode ser chamado de diversas partes do programa. Quando conclui a tarefa deve voltar a declaração após a chamada. Controle de Laço Execução de um grupo de instruções por um número fixo de vezes. Operações de Entrada/Saída

21 Nível do Conjunto de Instruções
Comparações e Desvios Condicionais Testar dados e alterar a sequência de instruções a ser executada. Chamada de Procedimento Grupo de instruções que realiza alguma tarefa e pode ser chamado de diversas partes do programa. Quando conclui a tarefa deve voltar a declaração após achamada.

22 Nível do Conjunto de Instruções
Controle de Laço Execução de um grupo de instruções por um número fixo de vezes. (a) Laço do tipo “teste no final”. (b) Laço do tipo “teste no início”.

23 Nível do Conjunto de Instruções
Operações de Entrada/Saída Registradores de dispositivo para um terminal simples.

24 Nível do Conjunto de Instruções
Operações de Entrada/Saída Exemplo de E/S programada.

25 Nível do Conjunto de Instruções
Instruções de inteiros do Pentium 4 Instruções

26 Nível do Conjunto de Instruções
Entrada/Saída Operações de Entrada/Saída Instruções para controlar os controladores de dispositivos de entrada/saída. E/S DMA E/S por interrupção

27 Nível do Conjunto de Instruções
E/S por DMA Controlador de DMA assume a função de transferir o conteúdo solicitado ao periférico diretamente a memória.

28 Nível do Conjunto de Instruções
Interrupções Interrupções são alterações no fluxo de controle que não são causados pelo programa em execução. Em geral estão relacionadas a E/S. Quando termina o tratamento de interrupção o controle é devolvido ao programa interrompido. As interrupções podem ser agrupadas por prioridade. Em alguns casos uma interrupção pode ser atendida antes da finalização da interrupção corrente.

29 Nível do Conjunto de Instruções
Interrupções Ações de Hardware O controlador de dispositivo ativa uma linha de interrupção no barramento. Se o atendimeto de interrupção estiver habilitado, a CPU envia um sinal de reconhecimento ao dispositivo. O dispositivo de identifica a CPU através de um número chamado vetor de interrupção. A CPU passa a o PC e PSW para a pilha. Carrega o PC com o valor encontrado a partir do vetor de interrupção.

30 Nível do Conjunto de Instruções
Interrupções Ações de Software Rotina de tratamento de interrupção salva todos os registradores em uso. O programa identifica o dispositivo gerador da interrupção. O dispositivo é identificado pela CPU através de um número chamado vetor de interrupção. Execução das instruções da rotina que trata a interrupção. Restaura os registradores salvos. Executa a instrução RETURN FROM INTERRUPT para que a CPU restaure PSW e PC.

31 Nível do Conjunto de Instruções
Interrupções

32 Nível da Lógica Digital
REFERÊNCIAS BIBLIOGRÁFICAS [1] TANEMBAUM, Andrew S. Organização Estruturada de Computadores. Quinta Edição. Editora Pearson Prentice Hall, São Paulo, 2007. [2] HENNESSY, John L.; Patterson, David A.; Organização e Projeto de Computadores – 2ª Edição 2000; ED LTC. [3] MONTEIRO, M. A. Introdução à organização de computadores. Quarta Edição. Editora LTC, Rio de Janeiro, 2002.


Carregar ppt "ARQUITETURA DE COMPUTADORES Nível do Conjunto de Instruções"

Apresentações semelhantes


Anúncios Google