A good answer might be:

8 bytes (4 bytes for the integer, 4 bytes for the address)

Allocating Memory for a Node

Dynamic memory can be used for a node. Here is a program that creates the two-node linked list of the picture:

# create the first node 
li      $v0,9             # allocate memory
li      $a0,8             # 8 bytes
syscall                   # $v0 <-- address
move    $s1,$v0           # $s1 = first node
li      $t0,1             # store 1
sw      $t0,0($s1)        # at displacement 0

# create the second node 
li      $v0,9             # allocate memory
li      $a0,8             # 8 bytes
syscall                   # $v0 <-- address
move    $s2,$v0           # $s2 = second node

# link the second node to the first
sw    ____,4(_____)       # copy address of second node
                          # into the first node

# initialize the second node
li      $t0,2             # store 2
sw      $t0,0($s2)        # at displacement 0

# put null in the link of the second node
sw    ____,4(_____)
       

First, 8 bytes are dynamically allocated for the first node. The address of the node is saved in $s1. The data, "1", is copied into the first four bytes of the node at displacement 0 off of $s1.

The process is repeated for the second node, except that its address is saved in $s2.

To complete the structure, the first node is made to point to the second node. This is what the green arrow between the nodes shows. But the code is not complete.

QUESTION 4:

Fill in the blanks.