Answer from cs61c-aj (Kevin Li 15855812) for Question 2 When ALUrc is asserted then the ALU will take the second operand from the sign-extended, lower 16-bits of the instruction. This is used for bne, lw and sw. When ALUrc is deasserted then the ALU will take the second operand from the register output. ALU will use the bit stored at the register coming out of read data 2. This is used for register and register functions such as add, sub, etc.