Quiz submission record for quiz2-2-1 at Tue Jun 29 19:43:41 2004: Your Answer for Question 1: It doesn't need all of them. All that is needed is if statements and gotos. The other two can be dropped. The designers of C included all of them for greater simplicity and flexibility to the programmer. Although the programmer could survive with only those two, only having the two can lead to bugs and make programming a bit more cumbersome. Your Answer for Question 2: if, ifelse, switch (also there are all the equality operator which allow us to make decisions), go to labels mips has a tester of equality, non equality, and less than or greater than (depending on the syntax), go to labels, jump register. But these all have to be used in a specific way to guarantee proper branching properties. So there are actually very few conditional branching statements. The reason is that these are all that are needed to make proper decisions. MIPS attempts to give the programmer the bare minimum so as to increase speed of operations Your Answer for Question 3: I thought the discussion of the jump register was very interesting. Your unique submission ID is quiz2-2-1-cs61c-eg-1088563421-3312.