1.1 Objetivo General
Presentar las características principales de XSPIM, el simulador del procesador MIPS R2000/R3000 que usaremos a lo largo de las sesiones del laboratorio.
1.2 Objetivos específicos
Al terminar esta sesión de laboratorio:
1.3 Introducción
XSPIM es un simulador que ejecuta programas para las computadoras RISC basadas en los procesadores MIPS R2000/R3000 y ha sido desarrollado por James R. Laurus en la Universidad de Wisconsin-Madison. XSPIM puede leer archivos que contienen programas en lenguaje ensamblador y permite su ejecución tanto paso a paso como sin interrupciones. XSPIM provee al usuario, además, una interface con algunos servicios del sistema operativo.
Evidentemente, la ejecución de código MIPS en una máquina con este procesador resultaría mucho más rápida que el empleo de un simulador, sin embargo, en cursos como este se usan simuladores para tal propósito porque, sin tomar en cuenta que máquinas con tales procesadores no se encuentran disponibles en cualquier lugar, los simuladores brindan mejores ambientes de desarrollo para programadores de bajo nivel que las máquinas reales ya que, en general, pueden detectar un mayor número de errores.
Aquí tienes una imagen de la interfaz del xspim como apoyo, dá click aquí
1.4 Cargando y ejecutando un programa en ensamblador
1.4.1 simple.s
1.5 Examinando y modificando el contenido de la memoria
Para examinar el contenido de la memoria basta con ver el panel de los segmentos de datos y buscar la localidad de memoria deseada. En el panel de segmentos se observa primero un número hexadecimal entre corchetes cuadrados y luego un grupo de cuatro hexadecimales de 32bits cada uno en el mismo renglón. El primer hexadecimal indica la localidad de memoria en la que está almacenado el primer byte del primer grupo de cuatro y los siguientes bytes del grupo se encuentran en los quince bytes siguientes de la memoria.
1.6 Examinando y modificando el contenido de los registros
En el primer panel de la ventana de xspim se muestran los registros del MIPS y su contenido. Como podrás observar, se tienen 32 registros de prpopósito general de 32 bits cada uno. Nota que cada uno tiene asociado un identificador de dos letras que se muestran entre paréntesis. Posteriormente aprenderemos el propósito de cada uno de estos registros.
Para modificar el contenido de un registro se sigue un procedimiento análogo al visto en la sección 1.5.
1.7 Preguntas de revisión