# All program code is placed after the # .text assembler directive .text # Declare main as a global function .globl main j main main: # Entering a new scope. # Symbols in symbol table: # println # Update the stack pointer. addi $sp $sp 0 # println la $a0 string_0 li $v0 4 syscall la $a0 newline li $v0 4 syscall li $t0 7 # println move $a0 $t0 li $v0 1 syscall la $a0 string_1 li $v0 4 syscall la $a0 newline li $v0 4 syscall # Exit scope. addi $sp $sp 0 li $v0 10 syscall # All memory structures are placed after the # .data assembler directive .data newline: .asciiz "\n" string_0: .asciiz "Hello world" string_1: .asciiz "hi"