Você está na página 1de 6

Usando o simulador MIPS

O objetivo desta aula prtica ser a utilizao do simulador MipsIt para


executar programas escritos em linguagem de mquina do MIPS.
1 Criando um projeto
Cada programa a ser executado dever estar inserido dentro do contexto de um
projeto. Para criar um projeto execute o programa MipsIt.exe.

No menu File clique em New para


criar um novo projeto.

Neste momento voc deve selecionar o


diretrio de localizao do projeto usando
o boto ao lado de Location. Lembre-se
de especificar o nome que o projeto deve
receber dentro da caixa Project name.

Agora seu projeto acaba de ser criado. Devemos passar para a prxima etapa.

2 Editando um programa em linguagem de mquina:


Agora devemos criar um arquivo assembly para que possamos observar o
funcionamento do programa. Para tanto v ao menu File e selecione a opo New.
Neste momento a seguinte caixa de texto surgir na tela.

Escolha a opo Assembler entre as trs


apresentadas. Na opo File name indique o
nome que seu arquivo deve receber (neste
tutorial ele ir se chamar exemplo).

Use o programa abaixo para seguir neste tutorial. Copie-o e salve o arquivo e o
projeto.
.data
a:
b:
c:

.word 5
.word 10
.word 5
.text
.globl start
.ent start
start: lw
$8, a
lw
$9, b
lw
$10, c
add
$11, $9, $8
sub
$11, $11, $10
sw
$11,a
.end start
Os construtores iniciando com ponto (.) so pseudo instrues ou diretivas que
tem como funo dar algumas indicaes ao montador sem que gere cdigo
executvel.
O construtor de montagem .data reserva rea de memria para as variveis a, b
e c, que so do tipo inteiro de 32 bits (.word). O construtor .text delimita incio de
cdigo e os construtores .globl start e .ent start declaram start como endereo
simblico de incio de programa. A partir do endereo simblico start tem-se um
programa em linguagem de mquina. O construtor .end start delimita o fim do
programa cujo endereo inicial simblico foi declarado como start. Nossa prxima
etapa compilar o programa acima.

3- Compilando um programa em assembly.


Para compilar o programa escolha a opo compile no menu build. Aps
corrigir os erros de sintaxe, o cdigo executvel poder ser gerado atravs da opo
build no menu build. Os cdigos objeto e executvel sero armazenados no diretrio
de projeto.

Use as opes do menu Build para


compilar o programa e gerar o
executvel
Quando a mensagens ao lado
aparecerem no canto inferior
esquerdo hora de passar a
prximo passo.

Ateno: se o se o programa acima no compilar pode ser til observar o


tpico configuraes que se encontra logo abaixo neste tutorial.

4- Carregando cdigo executvel para o simulador


Antes de carregar seu programa para o simulador o programa Mips.exe dever
ser executado. O carregamento para o simulador ser feito atravs do programa MipsIt
como est indicado na figura abaixo. Aps o carregamento a janela do simulador
aberta automaticamente.

Use o menu Build e na opo


Upload indique To Simulator.
Neste momento a janela do
simulador deve abrir.

Devemos, neste momento, passar para a manipulao do simulador.

5- Usando o simulador.
Uma vez que o cdigo foi carregado no simulador, a janela de simulao
aberta e o usurio pode verificar os registradores (clicando no desenho da CPU) ou a
memria (clicando no desenho RAM). Outros componentes como memria cache e

dispositivos de E/S podero ser visualizados, mas esto fora do escopo desta etapa
inicial. Clique apenas na CPU e na RAM.
O quadro de registradores mostra o contedo de todos os registradores em
notao hexadecimal e para cada registrador tem-se o nmero do mesmo e o nome
simblico. Alm dos registradores de propsito geral possvel visualizar alguns
registradores especficos como o PC.
A visualizao da memria inclui quatro colunas: endereo, contedo em
hexadecimal, rtulos e instruo de mquina simblica. Com isto pode-se reconhecer
as instrues digitadas no programa exemplo. Veja as figuras abaixo para obter
detalhes.

esquerda podemos visualizar os registradores


que compem a CPU e direita vemos a
disposio da memria como no comentrio acima.

Para se ir para o rtulo inicial do programa na


janela da memria clique o boto esquerdo do
mouse e escolha a opo Jump To Symbol,
escolhendo o smbolo start.

6- Executando um programa passo a passo


Chegou a hora de executar o programa que foi apresentado. Para tanto siga as
figuras abaixo.

Aps ter ido para o rtulo de inicio


como indicado na seo anterior,
escolha a opo Step dentro do
menu CPU do simulador Mips.exe
ou clique no boto com uma seta
apontando para quadrado azul.

Aps todos esses passos chegou hora de executarmos o programa. Faa-o e


veja o que acontece...

Ao observar a figura ao lado notamos que os


registradores so carregados com os valores que
estavam na memria e a seqncia de instrues
sendo seguidas na memria

7- Usando nome simblico dos registradores


Para poder se usar o nome simblico dos registradores em vez de seus
nmeros inclua o texto: include <Iregdef.h> no incio do programa. Edite o arquivo
exemplo.s incluindo esta linha e use os nomes dos registradores $8= t0, $9= t1 e $10
= t2. Salve este arquivo, recompile e simule novamente. Mude os valores das
variveis, compile e simule novamente...

8 - Configuraes
Agora vamos ver algumas configuraes bsicas que podem ser o diferencial
no momento de compilar o programa. Em caso de alguma dvida consulte os
monitores.
Para comear, selecione o menu File do MipsIt e escolha a opo Options.
Neste momento ir aparecer a janela abaixo. nela que as alteraes devem ser feitas.

Em Compiler exeutable indique o endereo


do programa xgcc.exe. Este executvel deve
estar na pasta bin.

Use a opo show directories for para selecionar os diretrios


onde esto arquivos auxiliares do MipsIt.
Siga a seguinte configurao:
Executable files aponta para a pasta Objects do MipsIt.
Include files aponta para o diretrio include do MipsIt.
Library files aponta para o diretrio lib do MipsIt.

Aps esta breve instruo ao simulador, resolva os exerccios da lista referente a essa
aula e simule os programas propostos.

Você também pode gostar