Você está na página 1de 5

ATIVIDADE ESTRUTURADA II (Perguntas sobre o Processador Neander-X)

Disciplina:Organizao de Computadores

Continuando a atividade estruturada anterior, iremos aprender a utilizar o simulador NeanderWin escrevendo e executando um programa neste simulador.

Nota importante: Lembre-se sempre de citar todas as referncias utilizadas.

SEMANA 1 e 2 desta prtica: Ambientao a) Executar o download do simulador

b) Identificar as partes do simulador descrevendo um breve roteiro de como gerar e executar um programa -----------------------------------------------------------------------------------------------------------------------------Na Figura abaixo mostramos a aparncia da tela principal do sistema NeanderWin. Na parte superior esto o menu geral de operao (Arquivo, Editar, etc...) e diversos botes usados em conjunto com o editor de textos, que seguem o estilo usual de programas.

------------Tela principal do NeanderWin-----------------------

Mais abaixo, est o painel do simulador, em que so mostrados os dois dispositivos de entrada e sada (8 chaves e um visor em formato hexadecimal), e diversos botes para controle de execuo. Imediatamente abaixo, esquerda, est o editor de textos, no qual o programa do aluno digitado ou criado interativamente atravs de uma funo para criao tutorada de programas (menu tutor de programao). direita desta rea se situam os verificadores dos registros e flags principais da CPU (ACC, PC, Zero e Negativo), e abaixo o visualizador da memria, com controles para alterao de contedo. Uma vez criado o programa ele ser compilado, o que provoca o aparecimento de uma janela pop-up com a listagem, num formato similar maioria dos montadores profissionais, em que tambm so indicados nos eventuais erros de compilao.

O programa compilado se reflete na alterao da memria, que imediatamente exibida no painel correspondente. possvel copiar o contedo desta janela para a rea de transferncia, para colar em algum editor (como o Word ou Bloco de Notas) possibilitando eventuais embelezamentos.

c) Listar as instrues disponveis com o respectivo formato e descrio

'NOP' cdigo 0 O comando NOP usado apenas para gastar tempo.

'STA ender' cdigo 1 O comando STA guarda o acumulador na posio de memria indicada pelo operando ender.

'LDA ender' cdigo 2 O comando LDA atribui ao acumulador o contedo da posio de memria indicada pelo operando ender.

'ADD ender' cdigo 3 O comando ADD soma ao acumulador o contedo de uma posio de memria indicada pelo operando ender.

'OR ender' cdigo 4 O comando OR realiza um "ou" lgico entre o acumulador e o contedo de uma posio de memria indicada pelo operando ender.

'AND ender' cdigo 5 O comando AND realiza um "e" lgico entre o acumulador e o contedo de uma posio de memria indicada pelo operando ender.

'NOT' cdigo 6 O comando NOT inverte os bits do acumulador.

'JMP ender' cdigo 8 O comando JMP (jump) desvia a execuo do programa para o endereo indicado pelo operando ender.

'JN ender' cdigo 9 O comando JN (jump if negative) desvia a execuo do programa para o endereo indicado pelo operando ender, apenas quando a ltima operao realizada produziu um valor com o bit 7 ligado (negativo).

'JZ ender' cdigo 10 O comando JZ (jump if zero) desvia a execuo do programa para o endereo indicado pelo operando ender, apenas quando a ltima operao realizada produziu um valor zero.

'JNZ ender' cdigo 11 O comando JNZ (jump if not zero) desvia a execuo do programa para o endereo indicado pelo operando ender, apenas quando a ltima operao realizada produziu um valor diferente de zero.

'IN ender' cdigo 12 O comando IN (input) traz para o acumulador o valor lido num dispositivo externo indicado pelo operando ender. No Neanderwin os dispositivos so: chaves (endereo 0) e o status de "dado disponvel" das chaves (endereo 1).

'OUT ender' cdigo 13 O comando OUT (output) descarrega o contedo do acumulador em um dispositivo externo indicado pelo operando ender. No Neanderwin o nico dispositivo disponvel um visor (endereo 0).

'LDI imed' cdigo 14 O comando LDI (load immediate) carrega no acumulador o valor dado pelo operando imed.

'HLT' cdigo 15 O comando HLT (halt) para a mquina. -----------------------------------------------------------------------------------------------------------------------------SEMANA 3 e 4: Elabore um programa que execute a soma de duas variveis de 8 bits representadas em complemento a dois. --------------------------------------------------------------------------------------Considere as posies (em decimal) a seguir: Inicio do programa: 0 Inicio da rea de dados: 128 Posio da 1 varivel: 128 Posio da 2 varivel: 129 Posio do resultado: 130 PRODUTO/RESULTADO: O resultado desta atividade ser um relatrio que descreva todo o processo alm do programa requisitado e o respectivo resultado atravs de um print da tela do simulador.

Programa: ;--------------------------------------------------; Programa: ; Autor: ; Data: ;--------------------------------------------------ORG 0 X EQU 128 Y EQU 129 W EQU 130

;carrega primeiro operador em comp de 2 LDI 02 OUT 00 STA X ;carrega segundoo operador em comp de 2 LDI 03 OUT 00 STA Y ;efetua a soma entre 2 operadores e guarda no terceiro LDA X ADD Y STA W OUT 00 HLT