Answer from cs61c-be (Tony Yiu 15099596) for Question 1 A branch delay is for when you're not sure of the result of one of your initial stages until you process it. The slot allows the branch expression to calculate the address and figure out where next to execute before moving on that way no needless code gets run.