MIPS dynamic memory allocation using sbrk

mips, sbrk, spim

Solution

.data
    var: .word 25
.text   
    main:
        li $v0, 9
        lw $a0, var
        syscall     # DYNAMICALLY ALLOCATING MEMORY OF SIZE 4 BYTES AT ADDRESS OF VAR
        sw $v0, var
        
        li $v0, 10
        syscall

Only the second statement needs to be omitted as the system is waiting to get a amount of byte that should be allocated but above I was trying to give the address of var but this is result. The `sbrk` service returns the address to a block of memory containing n additional bytes. This would be used for dynamic memory allocation.

Problem

I was trying to use `sbrk` for dynamic memory allocation. But, being a newcomer to SPIM and MIPS, I was unable to do so. I sketched out a rough code for the same. ``` .data var: .word 25 .text main: li $v0, 9 la $v0, var lw $a0, var syscall # DYNAMICALLY ALLOCATING MEMORY OF SIZE 4 BYTES AT ADDRESS OF VAR sw $v0, var li $v0, 10 syscall ```

Original source