| 
  
    
   | 
 
| Relative Addressing Mode | Register Indirect | |
|---|---|---|
    
            .data
 val:  .word  0x00100100
 # 0xnn: hexadecimal nn
       .text 
       lh  $a0, val+2
       li  $v0, 1
       syscall
    
    | 
   
    
            .data
       .byte  1
 val:  .byte  2
       .byte  3
       .text 
       lb  $a0, val-1
       li  $v0, 1
       syscall
    
    |  
   
     
          .data
 s:  .asciiz  "abc" 
     .text 
     la  $t0, s+2 
     la  $a0, ($t0)
     li  $v0, 4
     syscall 
     
    |  
  
| Output | Output | Output | 
| Register Indirect | Base Addressing Mode | |
    
          .data
 s:  .asciiz  "abc" 
     .text 
     la    $t0, s
     addi  $t0, $t0, 1
 # addi: add immediate
     lb    $a0, ($t0)
     li  $v0, 11
     syscall
    
    | 
   
    
          .data 
 s:  .asciiz  "abc"
     .text 
     li  $t0, 2
     la  $a0, s($t0)
     li  $v0, 4
     syscall
    
    |  
   
     
            .data
 val:  .byte  0x01
       .half  0x0302
       .word  0x07060504
       .text 
       la  $t0, val+1
       lb  $a0, 2($t0) 
       li  $v0, 1
       syscall 
     
    |  
  
| Output | Output | Output |