Práctica 1: Ensamblador MIPS


Buenas, en la práctica nº 1 de Fundamentos de Estructura de Computadores tendreis que hacer una serie de problemas con el programa MARS.
MARS es un programa para programar en ensamblador MIPS, su uso es totalmente gratuito y se puede descargar desde su página oficial: http://courses.missouristate.edu/KenVollmar/MARS/



El objetivo de esta sesión de prácticas es usar los conocimientos obtenidos en teoría para programar en lenguaje ensamblador, que como bien sabréis es un lenguaje de programación de bajo nivel para los computadores, microprocesadores, microcontroladores y otros circuitos integrados programables, hablando en plata es el lenguaje intermedio entre lenguajes de alto nivel (C, C++ entre otros) y el lenguaje máquina (10010110101), las funciones que usaremos en MARS no son mas que cortar, pegar y mover cadenas de ceros y unos de una manera fácil y amena. ¿Está todo un poco mas claro? Pues agárrese a la silla que lo bueno está aun por llegar.



Lo primero que tendremos que hacer es descargar MARS y ejecutarlo, no hace falta instalación ya que corre en un paquete .jar, eso sí, necesitaremos la aplicación Java instalada en nuestro ordenador y recomendablemente actualizada.
Cuando ejecutemos el paquete de MARS lo primero que tendremos que conocer es la interfaz antes de pulsar botones e iconos extraños a lo loco.

¿Tenemos abierto el MARS? Bien, lo primero observe la parte superior de la pantalla, como en casi todo programa ahí encontramos las pestañas de Archivo, Editar, Opciones, etc. Estas pestañas nos permitirán crear archivos, guardarlos y moldear el programa a nuestro gusto. A la derecha tenemos el estado de los registros, a la hora de compilar y ejecutar nuestro programa ahí podremos observar como van modificándose los valores de los registros a medida que el programa va avanzando. En la parte inferior podremos encontrar la ventana donde nos salen los mensajes de aviso y error de la compilación del programa, también podremos ver en la pestaña de Run I/O la salida que tenga nuestro programa. Finalmente en el centro iremos escribiendo nuestro código y observaremos la segunda pestaña durante la ejecución de nuestro programa ya que nos facilitará información útil.



Bien, sabiendo dónde se sitúan las partes mas importantes de MARS podemos empezar a programar, como todo buen programador haremos el sencillo programa de "Hola mundo", a partir de ahí y el guión de practicas proporcionado por la asignatura tendréis pista libre para comenzar una aventura en la programación de MIPS.
Lo primero es crear un archivo nuevo, para ello vamos a la pestaña de "File>New", seguidamente guardamos el archivo "File>Save as..." lo guardamos con el nombre que más os guste y listo.
El código del programa "hola mundo" es muy sencillo, os lo dejo aquí y podréis ver que la programación en MIPS es de lo mas sencilla.


.data
cadena: .asciiz "Hola Mundo"
.text
.globl main
main:
la $a0 cadena
li $v0 4
syscall
li $v0 10
syscall



Como decía la programación en MIPS es de lo mas sencilla, probando con este código, cambiando líneas, valores, variables y resolviendo los problemas del guión de prácticas podréis empezar a trastear e investigar por vuestra cuenta en la programación en ensamblador.