You are on page 1of 9

UNIVERSIDADE ESTÁCIO FASE

CAMPUS ARACAJU SERGIPE


REDES DE COMPUTADORES

JOEL CARDOSO RITA

ESTUDO DO PROCESSADOR NEANDER-X

ARACAJU/SE
ABRIL DE 2015
JOEL CARDOSO RITA

ESTUDO DO PROCESSADOR NEANDER-X

Produção da Atividade Estruturada requisitada por


Raimundo Araújo, professor na disciplina
Organização e Arquitetura de Computadores,
turno: noturno, Primeiro Semestre, como pré-
requisito parcial de avaliação e composição de
nota da AV1.

ARACAJU/SE
ABRIL DE 2015
CARACTERÍSTICAS

O computador hipotético Neander foi criado com intenções didáticas para permitir
exercitar os conceitos básicos da arquitetura de Von Neumann. Ele foi inspirado no computador
IAS, projetado por John Von Neumann, e visa facilitar ao aprendizado da programação em
linguagem binária. Embora com dimensões reduzidas e muito primitivo para uso prático, ele é
tão simples que você, sem muito esforço, pode programa-lo e projetá-lo.
É um processador simples empregado para fins acadêmicos, pelo fato dos processadores
modernos serem mais complexos. No entanto, esses processadores contemporâneos tem toda a
base conceitual do Neander. O Neander possui o modo de endereçamento direto, que também
é chamado de absoluto. Nesse modo, a palavra que segue o código da instrução contém, nas
instruções de manipulação de dados, o endereço de memória do operando. Nas instruções de
desvio, esse endereço corresponde à posição de memória onde está a próxima instrução a ser
executada.

 Largura de dados e endereços de 8 bits.


 Dados representados em complemento de dois
 Um acumulador de 8 bits (AC)
 Um apontador de programa de 8 bits (PC)
 Um registrador de estado com 2 códigos de condição: negativo (N) e zero (Z)

QUESTIONÁRIO

a) Quantos bits são utilizados para representar uma instrução?


Utiliza 8 bits para representar uma instrução.

2) Quantos bits são utilizados para representar um endereço?


Utiliza 8 bits para representar um endereço.

3) Como são representados os números inteiros negativos?


Os números negativos são simulados como Flag N (negativo) em complemento de 2. SE
valer 1, o inteiro é negativo, se valer 0, o inteiro é positivo.

4) Quantas instruções podem existir?


Em 8 bits podem ser representadas até 256 instruções. O Neander-X tem 10 instruções e
uma 11º que representa “nenhuma operação”.

5) Qual o tamanho máximo de memória endereçável?


256 posições (palavras de 8 bits) e apenas endereçamento direto.
6) Quais são os registradores disponíveis?
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), o REM, que é o registrador de
endereços da memória e o RDM, que é o registrador de dados da memória.

7) Qual o formato de uma instrução?


8 bits para opcode (código da operação) e os 8 bits seguintes para o operando. Há
Instruções que ocupam apenas 1 byte (NOP, NOT) e instruções que usam 2 bytes (STA,
LDA, ADD, OR, AND, JMP, JN, JZ).

SIMULADORES
Simulador é um aparelho/software capaz de reproduzir e simular o comportamento de
algum sistema. Os simuladores reproduzem fenómenos e sensações que na realidade não estão
ocorrendo. Um simulador pretende reproduzir tanto as sensações físicas (velocidade,
aceleração, percepção de paisagens) como o comportamento dos equipamentos da máquina que
se pretende simular, ou ainda de um qualquer produto final sem haver a necessidade de se gastar
matéria prima, utilizar máquinas e mão-de-obra e gastar tempo.
Tendo a função de facilitar ao máximo as atividades didáticas do professor e o apoio
mais completo possível para as dificuldades comuns do aluno.
Sendo criado um ambiente integrado para desenvolvimento, que executa em Windows
e Linux incluindo:
 Editor de textos;
 Montador (assembler);
 Simulador da arquitetura;
 Visualizador da memória simulada;
 Ferramenta de apoio ao aprendizado de instruções;
 Utilitário para conversões de bases;
 Simulador de visor painel de chaves;
 Gerador /carregador de imagem da memória simulada.

Com isso os alunos tem distintas experiência práticas com simulador, procurando nesse
artifício muito mais que apresentar conceitos teóricos, práticos e nomenclatura, mas o conduzir
a uma visão compreensiva e em pequena medida, criticar sobre a estrutura e o conjunto de
instruções, que permita gerar a curiosidade para estudos futuros mais aprofundados.
Comparação do simulador Neanderwin (simulador do processador Neander-X) e o
simulador AHMES.
Quanto às limitações analisadas nos simuladores existentes e o que se deseja que o
sistema proposto atenda, verificou que as ferramentas apresentadas, NEANDER e AHMES,
simulam de uma forma correta o funcionamento do hardware (parte física) e a interação entre
os dispositivos. O problema está na forma de como é apresentada a simulação e nas
funcionalidades oferecidas, o simulador AHMES é um simulador gráfico funciona de forma
correta, mas possui duas deficiências significativas: em primeiro lugar a sua interface que se
distancia um pouco da forma conceitual do hardware do computador. O modo como são
apresentados os dispositivos apresenta pouca semelhança com o hardware. Outro aspecto
importante é que os programas criados no AHMES para execução não podem ser salvos, pois
o software não disponibiliza essa funcionalidade. Analisando sob o foco didático é um aspecto
crítico para sua utilização. Sobre o NEANDER pode-se compartilhar quanto à forma gráfica as
mesmas considerações feitas ao AHMES que é compatível com o NEANDER, pois executa
corretamente todos os programas escritos para ele, sendo que o simulador NEANDER apresenta
menos informações que o NEANDER quanto ao layout do hardware do computador.
O diferencial do NEANDER é que pode-se salvar os programas inseridos no sistema
para uma futura manipulação.

a) Executar o download do simulador


Link: http://www.inf.ufrgs.br/~cgdaudt/dokuwiki-2011-05-25a/doku.php?id=arq0

b) Identificar as partes do simulador descrevendo um breve roteiro de como gerar e executar


um programa

O Neander só possui um modo de endereçamento: o modo direto (absoluto), no qual a


palavra que segue o código da instrução contém, nas instruções de manipulação de dados, o
endereço de memória do operando. Nas instruções de desvio, esse endereço corresponde à
posição de memória onde está a próxima instrução a ser executada.
Desde o início do projeto do simulador NEANDERX nosso objetivo era facilitar ao
máximo as atividades didáticas do professor e o apoio mais completo possível para as
dificuldades comuns do aluno. Para isso foi criado um ambiente integrado para
desenvolvimento, que executa em Windows e Linux, e que inclui:
Editor de textos;
 Montador (assembler);
 Simulador da arquitetura;
 Visualizador da memória simulada;
 Ferramenta de apoio ao aprendizado de instruções;
 Utilitário para conversão de bases;
 Simulador de visor e painel de chaves;
 Gerador/carregador de imagem da memória simulada.

A Figura abaixo mostra a aparência da tela principal do sistema NeanderWin. Na parte


superior estão o menu geral de operação (Arquivo, Editar, etc...) e diversos botões usados em
conjunto com o editor de textos, que seguem o estilo usual de programas Windows ou Linux.
c) Listar as instruções disponíveis com o respectivo formato e descrição.

Elabore um programa que execute a soma de duas variáveis de 8 bits representadas em


complemento a dois. Considere as posições (em decimal) a seguir:

Área do programa
Início do programa: 0

Área de dados
Início da área de dados: 128
Posição da 1ª variável: 128
Posição da 2ª variável: 129
Posição do resultado: 130

O programa seria:
Simbólico Comentário
LDA 128 ; acumulador A recebe conteúdo da posição 128
ADD 128 ; conteúdo de A é somado ao conteúdo da posição 128
ADD 129 ; conteúdo de A é somado ao conteúdo da posição 129
STA 30 ; conteúdo de A é copiado na posição 130
HLT ; processador para
Esse programa pode ser editado em linguagem de máquina (tanto em hexa como em
decimal), depurado e executado usando simular/depurador Neander. A codificação em
linguagem de máquina correspondente a cada uma das instruções mostradas anteriormente
seria:

Simbólico Hexa Decimal


LDA 128 20 80 32 128
ADD 128 30 81 48 128
ADD 129 30 82 48 129
STA 130 10 83 16 130
HLT F0 240
REFERÊNCIAS BIBLIOGRÁFICA

BORGES, José Antônio (antonio2 at nce dot ufrj dot br). SILVA, Gabriel P. ( gabriel at dcc dot
ufrj dot br). Endereço Principal de Pesquisa: http://www.dcc.ufrj.br/~gabriel/neander.php

Diana Morandi, André Luis Alice Raabe, Cesar Albenes Zeferino Universidade do Vale do
Itajaí – UNIVALI Rua Uruguai, 458 – Caixa Postal 360 – 88302-202 – Itajaí – SC – Brasil
Endereço Principal de Pesquisa: http://www.ppgee.pucminas.br/weac/2006/PDF/WEAC-
2006-Artigo-03.pdf

Núcleo De Computação Eletrônica URFJ


Endereço Principal de Pesquisa: http://equipe.nce.ufrj.br/gabriel/estacio/Neander3.pdf

Universidade Luterana do Brasil (Ulbra) – Curso de Ciência da Computação – Câmpus Canoas


Av. Farroupilha, 8001 – Bairro São José – CEP 92425-900 – Canoas – RS
Endereço Principal de Pesquisa:
http://www.ulbra.inf.br/joomla/images/documentos/TCCs/2011_01/TCCII_CC_FrancisSherer
.pdf

W373f WEBER, Raul Fernando. Fundamentos de arquitetura de computadores [recurso


eletrônico] / Raul Fernando Weber. – 4, ed. – Dados eletrônicos. – Porto Alegre: Bookman,
2012.
Editora também como livro impresso em 2012. ISBN 978-85-407-0143-4. 1. Ciência da
Computação, 2. Arquitetura dos computadores. I. Título.
Endereço Principal de Pesquisa:
http://books.google.com.br/books?id=UAiPQ60dRjMC&pg=PA67&hl=pt-
PT&source=gbs_toc_r&cad=3#v=onepage&q&f=false

Computador Hipotético AHMES


Endereço Principal de Pesquisa: http://www.mediafire.com/view/?kgkvd83oudo9dd5

INF - Instituto de Informática da Universidade Federal do Rio Grande do Sul (César Daudt)
Endereço Principal Downloads dos simuladores: http://www.inf.ufrgs.br/~cgdaudt/dokuwiki-
2011-05-25a/doku.php?id=arq0

You might also like