Investigação do processador Neander-X
Relatório de pesquisa: Investigação do processador Neander-X. Pesquise 861.000+ trabalhos acadêmicosPor: tigro • 25/11/2014 • Relatório de pesquisa • 1.338 Palavras (6 Páginas) • 184 Visualizações
Disciplina: CCT0006 - ORGANIZAÇÃO DE COMPUTADORES
TÍTULO DA ATIVIDADE ESTRUTURADA
Estudo do Processador Neander-X
OBJETIVO
1) Estudar o processador Neander-X
2) Pesquisar o que são simuladores
3) Utilizar o simulador NeanderWin
4) Escrever e executar um programa neste simulador
COMPETÊNCIAS/ HABILIDADES
• Conhecer a composição básica de um processador
• Conhecer o formato e endereçamento de instruções
DESENVOLVIMENTO
PARTE I
SEMANA 1 e 2:
Pesquisar as características do processador Neander-X e responda as seguintes questões:
a) Quantos bits são utilizados para representar uma instrução?
São utilizados 8 bits para representar uma instrução.
b) Quantos bits são utilizados para representar um endereço?
São utilizados 8 bits para representar um endereço.
c) Como são representados os números inteiros negativos?
São representados com negativo (N), 1- resultado negativo, 0-
resultado não é negative.
d) Quantas instruções podem existir?
Até 15 instruções.
e) Qual o tamanho máximo de memória endereçável?
Em binário seria de 00000000 à 11111111.
Em decimal, de 0 à 255.
Em hexadecimal, de 0 à FFH.
f) Quais são os registradores disponíveis?
1 registrador de estado com 2 códigos de condição: negativo (N)
e zero (Z).
g) Qual o formato de uma instrução?
As instruções podem ter um ou dois bytes. Nas instruções com apenas um byte, os 4 bits
mais significativos contém o código da operação. Nas instruções com dois bytes, que no
Neander são aquelas que fazem referência a um operando na memória, o segundo byte
contém o endereço de memória deste operando.
São estas as intruções;
'NOP' código 0
O comando NOP é usado apenas para gastar tempo.
'STA ender' código 1
O comando STA guarda o acumulador na posição de memória indicada pelo
operando ender.
1'LDA ender' código 2
O comando LDA atribui ao acumulador o conteúdo da posição de memória indicada
pelo operando ender.
'ADD ender' código 3
O comando ADD soma ao acumulador o conteúdo de uma posição de memória
indicada pelo operando ender.
'OR ender' código 4
O comando OR realiza um "ou" lógico entre o acumulador e o conteúdo de uma
posição de memória indicada pelo operando ender.
'AND ender' código 5
O comando AND realiza um "e" lógico entre o acumulador e o conteúdo de uma
posição de memória indicada pelo operando ender.
'NOT' código 6
O comando NOT inverte os bits do acumulador.
'JMP ender' código 8
O comando JMP (jump) desvia a execução do programa para o endereço indicado
pelo operando ender.
'JN ender' código 9
O comando JN (jump if negative) desvia a execução do programa para o endereço
indicado pelo operando ender, apenas quando a última operação realizada produziu um
valor com o bit 7 ligado (negativo).
'JZ ender' código 10
O comando JZ (jump if zero) desvia a execução do programa para o endereço
indicado pelo operando ender, apenas quando a última operação realizada produziu um
valor zero.
'JNZ ender' código 11
O comando JNZ (jump if not zero) desvia a execução do programa para o endereço
indicado pelo operando ender, apenas quando a última operação realizada produziu um
valor diferente de zero.
'IN ender' código 12
O comando IN (input) traz para o acumulador o valor lido num dispositivo externo
indicado pelo operando ender. No Neanderwin os dispositivos são: chaves (endereço 0) e
o status de "dado disponível" das chaves (endereço 1).
'OUT ender' código
...