You are on page 1of 3

QtSpim

Es el simulador que lee y ejecuta programas en lenguaje ensamblador escritos para MIPS32.

Descarga: http://spimsimulator.sourceforge.net/

Interfaz:

1. Cargar un archivo (.s) e iniciar el simulador.


2. Limpiar los registros.
3. Correr/Pausar/Detener el programa.
4. Simular el programa instruccin por instruccin.
5. Mostrar en la bandeja de registros los de uso general o de punto flotante.
6. Mostrar el cdigo o los datos.
7. User Text Segment: Instrucciones predeterminadas por el simulador.
8. Kernel Text Segment: Instrucciones predeterminadas por el simulador.

Cdigo fuente:

Se puede utilizar cualquier editor de texto (notepad, gedit, emacs, eclipse, etc). El archivo debe
guardarse con la extensin .s para que sea reconocido por el simulador QtSpim.
Sintaxis:

.text // Lo que sigue despus de .text son las instrucciones

// Siempre es necesario la etiqueta main: como


main: prembulo, sirve para iniciar valores, contadores, etc.
li $t0, 0xFFFF # Iniciando mscara
li $s1, 0xa48b8f6d7 // Los comentarios se realizan seguidos de # , no es
la $t1, word # Guardar direccin de memoria del dato buena prctica comentar muchas lneas del programa.

mascara: // Las etiquetas (labels) son necesarias antes de iniciar


or $s1, $s1, $t0 algn mdulo especfico del programa
lw $t3, 0($t1)
and $t3, $t3, $t0
or $s1, $s1, $t3
// Lo que sigue despus de .data son los datos que se
.data ingresan directamente desde el cdigo. Estos datos
consisten en arreglos.
str:
// Para obtener la direccin de memoria en donde INICIA
.asciiz hola mundo cada arreglo de datos, se utiliza la intruccin la y el
word: nombre del label asociado, como se muestra en main.
.word 87, 216, -54, 751, 1
// Adems de los que se muestran, tambin existen
half: .float, .double, .space, .align, .ascii
.half -19, 86, 245, -696
byte:
.byte -121, 36

Simulacin:

Una vez guardado el archivo (.s), se carga al simulador QtSpim utilizando el botn 1 (Reinitialize and
Load File)
Para correr el simulador se utilizan los botones 3 (Run/Pause/Stop) o tambin (Single Step) para
correr instruccin por instruccin. En caso de utilizar herramientas como syscall es
necesario tener habilitada la consola (Windows > Console).

Syscall:

Esta herramienta permite llamar funciones bsicas del sistema. Para usarlo, hay que setear el registro
$v0 con el cdigo de la funcin que desea (System call code) y luego se llama a la instruccin
syscall. La salida y entrada son por medio de la CONSOLA, que es la otra ventana que se abre al
iniciar QtSpin (debe estar habilitada).

You might also like