ção de Computadores I

Documentos relacionados
NEANDERWIN. Algumas características do processador Neander são:

A Arquitetura: conjunto de instruções

Linguagem de Montagem do NeanderX

Neander - características

Esta pseudomáquina foi criada em homenagem ao homem de Neandertal, o antecessor do homo sapiens.

O Computador Neander Neander - Computador Hipotético Didático

Disciplina de Organização de Computadores I

Arquitetura: características gerais

Computador Cleópatra

NEANDERWIN - Resumo operacional

Computador Cleópatra

Prof. Leonardo Augusto Casillo

ção de Computadores II

Instruções de Máquina

William Stallings Arquitetura e Organização de Computadores 8 a Edição

III.2 - Princípios de Arquitetura

PARTE II - CONJUNTO DE INSTRUÇÕES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR

Conjunto de instruções e modos de. aula 4. Profa. Débora Matos

Microprocessadores I ELE Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios

SimuS. Gabriel P. Silva. José Antonio Borges. Um Simulador Didático para o Ensino de Arquitetura de Computadores DCC-IM/UFRJ NCE/UFRJ

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA

Instruções. Maicon A. Sartin

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA

Disciplina: Arquitetura de Computadores

Aula 4 Conjunto de Instruções do Microprocessador 8085 Grupo Aritmético

Solução Lista de Exercícios Processadores

William Stallings Arquitetura e Organização de Computadores 8 a Edição

Introdução. à Ciência da. Representação de Números em Ponto Flutuante. Aula 21. Números Fracionários

CONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP)

SSC510 Arquitetura de Computadores 1ª AULA

Unidade de Controle. UC - Introdução

ORGANIZAÇÃO DE COMPUTADORES

Organização e Arquitetura de Computadores I

Sistemas Processadores e Periféricos Aula 2 - Revisão

CONJUNTO DE INSTRUÇÕES DE UM PROCESSADOR (UCP)

SIMULAÇÃO DE MÁQUINA DE REGISTRADORES COM MÁQUINA DE TURING MULTIFITA

2. A influência do tamanho da palavra

Arquitetura de Computadores Aula 10 - Processadores

CONJUNTO DE INSTRUÇÕES

Aula 14 Funcionamento de Processadores (Visão específica)

Processador. Processador

Arquitetura de Computadores. Ciclo de Busca e Execução

PSI3441 Arquitetura de Sistemas Embarcados

SSC0112 Organização de Computadores Digitais I

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I

2.4 Processadores Micro-instruções Desvios Desvios Condicionais Instruções e Programação em Assembler

UCP: Construindo um Caminho de Dados (Parte I)

Microprocessadores CPU. Unidade de Controle. Prof. Henrique

MICROPROCESSADORES E MICROCONTROLADORES. PROVA 1 - Solução da Versão 1

LISTA 02 CONJUNTO DE INSTRUÇÕES - GABARITO

Arquitetura e Organização de Computadores

Capítulo 6 Aritmética Digital: Operações e Circuitos

UCP: Caminho de Dados (Parte II)

Linguagem de Maquina II. Visão Geral

Arquitetura de Computadores Conceitos Fundamentais. Graduação em Engenharia Elétrica - UFPR Prof. Carlos Marcelo Pedroso 2016

Microprocessadores I ELE Conjunto de Instruções do Microprocessador 8085 Aula 9 - PILHA E SUBROTINAS -

Sistemas de Computação. Instruções de Linguagem de Máquina

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 10

Arquitetura e Organização de Computadores

COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES. Adão de Melo Neto

Aula 19: UCP: Construindo um Caminho de Dados (Parte III)

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas. Aula Tópico 2

Exercícios Referentes à Prova P2

Objetivos Gerais. Arquitetura de Computadores. Arquiteturas estudadas. O Computador Neander

2. A influência do tamanho da palavra

4. Modelo de Programação do DLX Introdução

Organização de Computadores

Introdução à Computação: Arquitetura von Neumann

Arquiteturas RISC e CISC. Adão de Melo Neto

As 5 partes fundamentais. Linguagem de Programação Pinagem Características Elétricas Ambiente de Desenvolvimento Integrado - IDE

Introdução à Organização de Computadores. Aula 8

Organização e Projeto de Computadores

MAC0329 Álgebra booleana e circuitos digitais DCC / IME-USP Primeiro semestre de 2017

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO 6: PROCESSADORES. Prof. Juliana Santiago Teixeira

COMPUTADOR 2. Professor Adão de Melo Neto

Programação de Microprocessadores. Programação de Microprocessadores SEL-433 APLICAÇÕES DE MICROPROCESSADORES I

MICROPROCESSADORES E MICROCONTROLADORES PROVA 1

Aula 12: Memória: Barramentos e Registradores

Transcrição:

Universidade Federal de Pelotas Instituto de Física e Matemática Departamento de Informática Bacharelado em Ciência da Computação Arquitetura e Organizaçã ção de Computadores I Aula 2 1. Projeto da Arquitetura e da Organização de um Computador: o Neander guntzel@ufpel.edu.br www.ufpel.edu.br/~guntzel/aoc1/aoc1.html

A Arquitetura: características gerais Largura de dados e endereços de 8 bits Dados representados em complemento de 2 1 acumulador de 8 bits (AC) 1 apontador de programa de 8 bits (PC) 1 registrador de estado com 2 códigos de condição: negativo (N) e zero (Z) slide 2.2

A Arquitetura: conjunto de instruções código 0000 0001 0010 0011 0100 0101 0110 1000 1001 1010 1111 instrução NOP STA end LDA end ADD end OR end AND end NOT JMP end JN end JZ end HLT comentário Nenhuma operação Armazena acumulador (store) Carrega acumulador (load) Soma OU lógico E lógico Inverte (complementa) acumulador Desvio incondicional (jump) Desvio condicional (jump on negative) Desvio condicional (jump on zero) Término de execução (halt) slide 2.3

A Arquitetura: conjunto de instruções instrução NOP STA end LDA end ADD end OR end AND end NOT JMP end JN end JZ end comentário Nenhuma operação MEM(end) AC AC MEM(end) AC MEM(end) + AC AC MEM(end) OR AC AC MEM(end) AND AC AC NOT AC PC end IF N=1 THEN PC end IF Z=1 THEN PC end slide 2.4

A Arquitetura: formato das instruções As instruções do Neander possuem um ou dois bytes (ou seja, ocupam uma ou duas posições de memória) Instruções com um byte: NOP, NOT 7 4 3 0 código da oper. don t care Instruções com dois bytes: STA, LDA, ADD, OR, AND, JMP, JN, JZ 7 4 3 0 código da oper. don t care endereço direto slide 2.5

A Arquitetura: modos de endereçamento Somente o modo de endereçamento direto (também chamado de absoluto) A palavra que segue o código da instrução contém o endereço de memória do operando Exemplo: uma instrução ADD 24 25 131 memória ADD 131 66 instrução endereço do operando (endereço direto) operando slide 2.6

A Arquitetura: códigos de condição A ULA do Neander fornece os seguintes códigos de condição, os quais são usados pelas instruções JN e JZ N (negativo): sinal do resultado de uma operação na ULA se o resultado da ULA for negativo, N=1 Caso contrário, N=0 Z (zero): indica resultado igual a zero Se o resultado da ULA for zero, Z =1 Caso contrário, Z=0 slide 2.7

A Arquitetura: programação Programa e os dados estarão armazenados na memória Deve ser escolhida uma área de programa e uma área de dados A área de programa não deve invadir a área de dados e vice-versa Vamos convencionar que a área de programa ocupa a metade inferior dos endereços e a área de dados ocupa a metade superior Aliás, qual é o tamanho de memória que o Neander consegue endereçar? slide 2.8

A Arquitetura: programação O Neander usa 8 bits para endereçar (=largura de endereço de 8 bits) Logo, ele consegue acessar qualquer endereço do intervalo: 00000000 a 11111111 (em binário) 0 a 255 (em decimal) 0H a FFH (em hexadecimal) Então, iremos adotar a seguinte divisão da memória do Neander: Área de programa: posição 0H até 7FH Área de dados: posição 80H até FFH slide 2.9

A Arquitetura: programação Exemplo de programa: um programa que soma o conteúdo de 3 posições consecutivas da memória e armazena o resultado na quarta posição. simbólico LDA 128 ADD 129 ADD 130 STA 131 HLT comentário Acumulador (AC) recebe o conteúdo da posição 128 Conteúdo de AC é somado ao conteúdo da posição 129 Conteúdo de AC é somado ao conteúdo da posição 130 Conteúdo de AC é armazenado (copiado) para a posição 131 Processador pára slide 2.10

A Arquitetura: programação Os programas podem ser editados em linguagem de máquina (em hexa ou em decimal), depurado e executado usando o simulador/depurador do Neander A codificaçnao em linguagem de máquina seria simbólico LDA 128 ADD 129 ADD 130 STA 131 HLT decimal 32 128 48 129 48 130 16 131 240 hexa 20 80 30 81 30 82 10 83 F0 slide 2.11

A Arquitetura: programação Exercício 3, página 53 do livro. Faça um programa para subtrair duas variáveis de 8 bits representadas em complemento de dois. O resultado deve aparecer na posição de memória consecutiva às ocupadas pelas variáveis. posição 128: minuendo posição 129: subtraendo posição 130: resultado slide 2.12

A Arquitetura: programação Outro exercício. Faça um programa que determina qual é a maior dentre duas variáveis positivas de 8 bits, representadas em complemento de dois e aramazenadas em posições consecutivas da memória. A maior das variáveis deverá ser armazenada na posição subseqüente às variáveis testadas. posição 128: primeira variável posição 129: segunda variável posição 130: maior das duas variáveis slide 2.13