# A demonstration of some simple MIPS instructions # used to test QtSPIM # Declare main as a global function .globl main # All program code is placed after the # .text assembler directive .text # The label 'main' represents the starting point
li$t2, 25# Load immediate value (25) lw$t3, value # Load the word stored in value (see bottom) add$t4, $t2, $t3# Add sub$t5, $t2, $t3# Subtract sw$t5, Z #Store the answer in Z (declared at the bottom) # Exit the program by means of a syscall. # There are many syscalls - pick the desired one # by placing its code in $v0. The code for exit is "10" li$v0, 10# Sets $v0 to "10" to select exit syscall syscall# Exit # All memory structures are placed after the # .data assembler directive .data # The .word assembler directive reserves space # in memory for a single 4-byte word (or multiple 4-byte words) # and assigns that memory location an initial value # (or a comma separated list of initial values) .word12 .word0